【发布时间】:2013-12-09 16:54:14
【问题描述】:
我对 C 编程非常陌生,我正在寻找最简单的解决方案来让 scanf 识别没有输入,我的意思是在没有输入任何内容的情况下按下 enter 键并且它知道没有输入任何内容并返回到主菜单。我看了看这里,我发现了一个类似的问题,但 scanf 采用的是整数值,而我需要一个字符串作为文件名。我的代码是:
FILE *Fpacket;
char filename[20];
puts("Please declare a name for the file"); // request filename
scanf("%s", filename); // store text in filename string
我尝试了 fgets、getchar 和其他一些组合,但我无法将换行符作为输入。我知道 scanf 会忽略前面的空格,非常感谢任何帮助!
谢谢
【问题讨论】:
-
scanf 会返回读取的字符数,可以放一个 a=scanf();和 if(a==0) 应该可以工作
-
@fernando.reyes 感谢您的回复,但是这段代码仍然没有将回车键作为输入,它只是进入终端的下一行
-
@user3043146 建议一段时间(几小时、几天)后,在满足您需求的答案中,接受最好的答案。 (一旦你达到 15+ 代表),对所有对你有用的答案进行投票。