【发布时间】:2013-10-06 00:54:26
【问题描述】:
我需要一个程序来使用fgetc 从文件中获取输入。第一个条件是找到换行符'\n',然后复制所有字符。之后,如果遇到逗号',',程序需要停止复制。
我的代码可以编译,但是当我运行它时,什么也没有发生;光标只是无限闪烁。
do {
if (copy != '\n')
{
copy = fgetc(mp);
}
else
{
for (i=0; copy != ','; i++) //i is a counter {
player_name[i] = copy;
copy = fgetc(mp);
}
}
}
while (copy != EOF);
printf("%c", player_name);
帮助?
【问题讨论】:
-
这段代码没有输出,这就是为什么你什么也看不到的原因。添加一些
printf语句。 -
将 printf 中的 %c 更改为 %s
-
对不起。我已经编辑过了。
-
另外,读完所有字符后,在 player_name 中添加 0 表示字符串结束。所以在for循环之后,我会输入
player_name[i] = 0。现在循环的设置方式是,在读取第一个player_name之后,它会看到copy != EOF并会寻找另一个换行符,之后它将覆盖第一个player_name。