c语言 能用sscanf函数提取一行代码中某个字符后面的字符串吗

如果能,怎么提取。。给个例子 由于我编的是 用c语言写的 汇编语言编译程序
init: STOREB Z cell
提取冒号后面的字符串,最好跳过空格。。

1、当然能。sscanf相当于格式输入,能够处理任何特殊格式的输入。

2、例如:

#include <stdio.h>
int main()
{
char abd[80]="aaabc.jpg";
char buf1[10],buf2[10];
sscanf(abd, "%[^.].%[^.]", buf1, buf2); //通过ssanf获得文件名及后缀名
printf("buf1=%s buf2=%s",buf1, buf2);
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-25
如果能,怎么提取。。给个例子 由于我编的是 用c语言写的 汇编语言编译程序 init: STOREB Z cell提取冒号后面的字符串,最好跳过空格。。
第2个回答  2012-09-25
按格式写就可以了
#include <stdio.h>
#include <stdlib.h>
main(){
char s[]="abc 123 n:xyz";
char s2[80];
sscanf(s,"%*[^:]:%s",s2);
printf("%s",s2);

}

输出 xyz本回答被提问者和网友采纳
第3个回答  2012-09-26
这样写就能达到你的要求了:
#include <stdio.h>
main(){
char s[]="abc 123 n: xyz";
char s2[80];
sscanf(s,"%*[^:]:%*[ ]%s",s2);
printf("%s",s2);
}
输出 xyz
第4个回答  2012-09-25
把这句都提出来没问题吧?
然后做判断, 拿到你想要的...

c语言 能用sscanf函数提取一行代码中某个字符后面的字符串吗
1、当然能。sscanf相当于格式输入,能够处理任何特殊格式的输入。2、例如:include <stdio.h>int main(){char abd[80]="aaabc.jpg";char buf1[10],buf2[10];sscanf(abd, "%[^.].%[^.]", buf1, buf2); \/\/通过ssanf获得文件名及后缀名printf("buf1=%s buf2=%s",buf1, buf2);} ...

c语言中关于sscanf函数的运用及%n的用法
在C语言中,`sscanf` 函数是一个强大的工具,用于解析字符串中的格式化输入。与 `scanf` 相比,`sscanf` 函数多了一个参数,这个参数是第一个参数,它指定了要被解析的字符串。简单来说,`sscanf` 函数实际上就是对输入字符串的操作。例如,我们有一个字符串 `charszText[1024] = "12334.4"`,...

c语言编程,关于sscanf通过中文逗号截取字符串的问题
32. **可以看出,sscanf的返回值是读取的参数个数 33. *\/ 34.35. \/*2.取指定长度的字符串*\/ 36. string = "123456789";37. sscanf(string, "%5s", buf1);38. printf("2.string=%s\\n", string);39. printf("2.buf1=%s\\n\\n", buf1);40. \/ 41. ...

c语言中关于sscanf函数的运用及%n的用法
代码如下:include<stdio.h> include<string.h> int main (){ char s[200];int n,wei;memset(s,0,sizeof(s));while(gets(s)){ int cnt=0,sum=0,num;char *p=s;while(sscanf(p,"%d%n",&n,&wei)==1){ sum+=n;cnt++;wei++;if(p) p+=wei;} printf("%d %d\\n",cnt,su...

C语言中,请问如何从字符串中读取所有的浮点数(个数不知道),浮点数以空 ...
如果确认字符串中只有空格分开的浮点数的话,可以利用一个缓存字符串数组, 临时保存当前字符到下一个空格之间的字符, 然后利用atof把它转换为浮点数,然后清空缓存字符串数组,继续读取,直到字符串尾 include <stdlib.h>#include <stdio.h>#define FLOAT_ARRAY_LENGTH 100#define BUFFER_LENGTH 30void ...

c语言中使用sscanf函数读读空数据的问题
别费脑筋了,另想办法吧!两个逗号间本无数据,你怎么能叫sscanf读出个“空”来——这真叫“无中生有”!给你个思路:写个函数一个数据一个数据读,当遇到两个或多个连续逗号时在两个逗号间给接收变量附加一个“空”。

C语言中,读取字符串中的一个位置
include<stdlib.h> include<string.h> \/ 查找字符串首次出现的位置 charneedle[]="name";charhaystack[]="mynameiszhangwoods";printf("strpospositionis:%d",strpos(haystack,needle));paramhaystack在该字符串中进行查找 paramneedle要查找的字符串 return返回needle存在于haystack字符串起始的位置-1代表...

怎么用C语言的scanf实现一次输入若干个数据
根据需要一般选择如下3种方法:1,已知数量,且个数较少:scanf("%d%d%d",&a&b&c);2,已知数量,但数量较多:for(int i=0;i<n;i++)scanf("%d",&a[i]);3,不知道数量 int i=0;while(scanf("%d",&a[i])){ i++;}

c语言guts用法?这个是不是一次只能读一个字符???还有下面的程序不知道哪...
第三,输出字符串的时候(如果您不是在尝试函数的用法),我也建议用fprintf(fp,"%s\\n",word);这样的去输出,当然puts也是可以的。还有呢,库文件就用尖括号吧,那样比较快,主函数后面写个return看起来更完美些。。。(很多兼容c++的编译器都是要求main属于int型的,最后就是return 0;)其实如果更...

如何用c\/c++把一个字符串把里边的数字提取出来
给定一个数字字符串,把这个串里边的连续数字提取出来放到另外一个整型数组中一个单元中:include<iostream> include<string> using namespace std;void tiqu(char*a,int*b){ int j=0;bool key=false;for(int i=0;i<strlen(a);i++){ if(a[i]>='0'&&a[i]<='9'){ if(key)b[j] ...

相似回答