因此,这里是我的代码:如何检查用户是否输入字符串值?
main()
{
char *iochar;
printf(" Enter a standard line: ");
scanf ("%s", &iochar);
if (iochar != NULL)
{
printf(" Here's what you entered: %s ", &iochar);
}
else
{
printf(" Oops! Looks like you forgot to enter something! ");
}
}
我的问题是,我可以扫描用户进入并储存起来,如果东西存在,它拿出正确的消息。但如果我只是打回来测试没有输入(空,空等),程序既不退出也不输出我的错误信息。它只是挂起,直到我输入一些东西。
我一直在Java编程的最后两个学期,所以C现在完全失去了我。所以任何帮助将不胜感激。
所以你只是想验证输入是否是一个字符串? –
不要使用'scanf'(永远)。使用'fgets',或者,如果你有,'getline'。然后,“刚刚返回”会产生字符串'“\ n”'并输入control-D(强制EOF条件)会产生字符串'“”''。顺便说一句,第二个和第三个'printf'字符串末尾的空格应该是'\ n'。 – zwol
@OusmaneDiaw在这一点上,是的。我的代码必须做其他事情,但我必须能够验证事实上有某种输入。 – Polly