我正在尝试使用sscanf从字符串中获取所需的值,但无法完成。我想做的是:
我有一根有这种图案的绳子
27磅
(3个元素的整数空间整数空间字符串)
我必须将每个值用空格分隔并存储到变量中。
这是我的代码:
sscanf(string[i],"%d %d %s %s",&e,&m,id,modelo);
我遇到的问题是它只存储第一个整数,而忽略字符。
我该怎么解决?
谢谢您。
编辑:
下面是函数的全部代码:
void le_lista(lista *l) {
int e,m;
char id[1],modelo[3],frase[20][12];
int linha=0;
while (1) {
fgets(frase[linha],12,stdin);
//
if (feof(stdin)) {
break;
}
//
linha++;
}
int i;
for(i=0;i<=linha;i++) {
sscanf(frase[i],"%d %d %s %s",&e,&m,&id,&modelo);
enfila(e,m,id,modelo,l);
//printf("%s",frase[i]);
}
printf("Linhas: %d",linha+1);
return;
}
最佳答案
char mystring[] = "2 7 A BUL"
x = strtok(mystring, " "); //separates by spaces
更多信息Split string with delimiters in C