我有一个被格式化这样如何使用fscanf捕获字符串?
A New Day Has Come (Radio Remix); 239
Ten Days; 227
Goodbye's (The Saddest Word); 198
Prayer; 313
I Surrender; 271
At Last; 209
Sorry For Love; 301
我将如何使用fscanf
抢的字符串的文件,并且也是继分号多少?我想这
for(track = 0; track < albums[size].num_tracks; ++track){
fscanf(fileptr,"%s;%i",albums[size].tracks[track].name,albums[size].tracks[track].length);
//print out the tracks
printf("Track number %i : %s", track, &albums[size].tracks[track].name);
}
然而,当发生的printf,整个字符串不打印,而不是像
Track number 0 : A
Track number 1 : New
Track number 2 : Day
etc...
所以你可以看到,代码捕获了一些个别单词原因,而不是整个字符串在分号之前。我将使用哪种表情来获取整个字符串?编辑为拼写
您是否必须使用fscanf?由于分号分隔文本和数字,为什么不能使用strtok函数呢?这是一个strtok的例子http://www.cplusplus.com/reference/cstring/strtok/ – chuthan20
我想我需要使用fscanf :(该死的C项目 – Zack
当你使用%s时,它会尝试读取字符串,直到非空白字符已到达,所以你会一次得到每个单词 – chuthan20