<分区>
//我想从“hello.mp4;2”中分离出最后一个数字,即“2”作为一个整数 这是代码:
int main()
{
char str[30];
int separate = 0;
strcpy( str, "hello.mp4;2" );
sscanf(str, "%*[^;]%d", &separate);
printf("%d\n",separate);
return 0;
}
它不工作......
标签 c
<分区>
//我想从“hello.mp4;2”中分离出最后一个数字,即“2”作为一个整数 这是代码:
int main()
{
char str[30];
int separate = 0;
strcpy( str, "hello.mp4;2" );
sscanf(str, "%*[^;]%d", &separate);
printf("%d\n",separate);
return 0;
}
它不工作......
最佳答案
将 sscanf
更改为:
sscanf(str, "%*[^;];%d", &separate);
即,您需要在排除它的字符串之后匹配分号 ;
。方括号中的部分匹配分号之前的字符串,留下 ;2
。因此,在尝试匹配 2
之前,您需要先匹配分号 ;
。
关于c - 如何在c中使用sscanf在分号后分隔数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34985034/