如何利用 sscanf 提取数字
char *ptr="sfas -3";
char str[10];
int num;
sscanf(ptr,"%[^ ]%[^]",str,&num);
为何提取不出 数字-3呢
[最优解释]
sscanf(str,"%s%*[^-]-%d",str1,&num); 匹配3
sscanf(str,"%s%*[^-]%d",str1,&num); 匹配-3
[其他解释]
sscanf(ptr,"%[^ ] %d",str,&num);
[其他解释]
%[^ ]注意这里有空格
[其他解释]
sscanf(ptr,"%s%d",str,&num);
[其他解释]
sscanf(str,"%*[^-]-%d",&num); 匹配3
sscanf(str,"%*[^-]%d",&num); 匹配-3
[其他解释]
sscanf(ptr,"%[^ ] %d",str,&num); 这样数字 num 打印的不对啊
[其他解释]
sscanf(ptr,"%[^ ] %d",str,&num); 这样数字 num 打印的不对啊 num=0;
[其他解释]
谢谢 #7
[其他解释]
null