我正在阅读一个文本文件,其中包含以下字词:
hi
there
was it
fuzzy man lady
但是,每次我逐行打印出来时,我都会得到以下结果:
hi
there
was
it
fuzzy
man
lady
我希望这些词汇在同一行上,如:
was it
fuzzy man lady
以下是代码:
int main(int argc, char* argv []) {
int i = 0, line = 7;
char ch[200];
char const* const fileName = argv[1];
FILE *file = fopen(fileName,"r");
while(line--){
fscanf(file,"%s",ch);
i++;
printf("%s", ch);
}
fclose(file);
return 0;
我猜测在检测新线路上的空格或单词时,\ n不能区分。那么我怎么能修改它来得到想要的结果呢?
提前致谢。
答案 0 :(得分:2)
答案 1 :(得分:1)
fread()
也可以使用。以下将能够从文件中读取最多199个字符。
fread(ch, sizeof(ch[0]), sizeof(ch)/sizeof(ch[0])-1, file);