[英]Checking input to see if user has entered control-d
对于C来说还很陌生,我有一个可能很简单的问题。 我正在用C编写一个程序,该程序会从用户那里读取一系列字符串。 在用户指示他已经完成输入字符串之后,程序应该对这些字符串进行处理。 他通过输入“ Ctrl-D”来做到这一点。
我在弄清楚如何检查用户是否输入“ Ctrl-D”时遇到麻烦。 从我的初步研究来看,似乎Ctrl-D应该与文件结尾有关,这似乎不是我可以轻松检查的字符。
我正在尝试通过scanf读取这些字符串。 我有以下代码(请忽略最终返回的初始字符串数组。我知道当前它什么也不做。
char **get_fragments_from_user(){
char *strings[20000];
char tempstring[1001];
while(true){
printf("\n> ");
scanf("%s", &tempstring);
printf("\n Recorded %s", tempstring);
if(tempstring[0] == -1) break;
}
return strings;
}
有没有一种简单的方法来检查用户是否输入了“ Ctrl-D”?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.