因此,這裏是我的代碼:如何檢查用戶是否輸入字符串值?
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