mwbr.net
当前位置:首页 >> 关于ssCAnF读取数字的问题 >>

关于ssCAnF读取数字的问题

sscanf(d_name," %13*s%d_%d",&d,&j); %13*s中的13 是你要忽略多少个字符

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

直接用 %c 进行读龋 #include int main(){ int a, b; char c; sscanf("12 25", "%d%c%d", &a, &c, &b); printf("%d%c%d\n", a, c, b); printf("%d\n", c); return 0;}

sscanf(cmt,"%*[^0-9]%[0-9]",imt);sscanf(cmt,"%*[^0-9]%[0-9]",imf);

%[0-9]的意思是输入0~9之间的字符,在遇到不是这个范围的数据时停止,你的str上来就是一组不属于这个范围的字符,所以temp采集失败。这一点你可以观察sscanf的返回值得知。

我觉得你的问题主要在于如何判断字符串中的数字,对吧? 如果是这样,可以通过sscanf读入时,对每个字符进行一次大小判断,如果该字符>=0 并且

#include #include int main(){int count, total, num;char str[200];char *s;while (gets(str) != NULL)//遇到EOF停止{count = total = 0;s = strtok(str, " \t");while (s != NULL && sscanf(s, "%d", &num)){total += num;count++;s = strtok...

int data; //保存第二个下划线后面的数字 FILE *fp=fopen("c:\\file.txt","r"); fscanf(fp,"%*[10]c%d%*[10]c",&data);//如果一个空格都没有的话,可以循环,用这个函数读出所有的数据 ,"%*[10]c表示跳出前10个数据,%d表示读出整形数据,\r\n表...

喂喂,LZ你的strCmd分配内存了么?野指针是很危险的埃 指针只有地址,必须还有对应的内存才可以,否则你就是向随机内存写入数据埃 应该用char strCmd[256]; 50实在太短了,至少也得MAX_PATH(256)个字符吧。 你只要用strstr搜索第一个空格的位...

源代码说话 #include #include #include #include typedef struct { char time[20]; double Latitude_value; char LatiNS; double Longitude_value; char LongiEW; char GPSQuality[2]; int NumOfSat; double AntennaHight; double HorizontalDO...

网站首页 | 网站地图
All rights reserved Powered by www.mwbr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com