入力が整数かどうかを確認するために、文字列を反復処理しようとしています。
これはコードです:
for (int i = 1; i < strlen(buffer); i++) //Checking that each character of the string is numeric
{
if (!isdigit(buffer[i]))
{
valid = false;
break;
}
}
if(valid == false)
{
printf("Invalid input!");
}
else
{
num = atoi(buffer);
printf("The number entered is %d", num);
}
問題は、入力が正しい場合でも、2 としましょう。出力メッセージは依然として「無効な入力です!」です。
私は今とてもイライラしています。数値を検証して次のことを確認できるように、atoi 関数、strtol 関数、およびその他のメソッドを使用してみました。
1) 文字ではありません 2) 整数です
私を助けてください。私はこの問題を2時間以上解決しようとしています。