Q
验证输入整数
1
A
回答
2
如果第一个字符是不是一个数字,然后%d
将无法匹配,并且a
不会分配。 scanf
的返回值告诉你分配了多少项目。如果是一个,那么显然它至少是部分有效的数字。如果它为零,这意味着它不能被解析为数字,并且您可能想要发出错误信号。
+0
谢谢!终于明白这一点。 – amulous
2
scanf
返回代码会告诉你你的参数列表中有多少项被填充。这可能还不是你想要的:我认为你会发现输入“123four”仍然会返回1,其中a = 123。
0
您可以使用一个do while循环从用户 比如验证输入:
int read,a;
do {
read = scanf("%c", &a);
}while(read != EOF && a != '\n'); //change validation here according to condition
相关问题
- 1. 验证输入整数
- 2. Java整数输入验证
- 3. Scala Swing:验证TextBox的整数输入
- 4. DataGridView中的整数输入验证
- 5. 输入验证 - 仅限整数?
- 6. 整数输入验证asp.net mvc4
- 7. Ç - 整数输入验证码
- 8. JAVA-验证输入是整数
- 9. 验证用户的整数输入?
- 10. 整数输入验证Python的
- 11. Symfony2 HTML5整数输入和验证器
- 12. 整数验证输出
- 13. 输入,阻止整个表单验证
- 14. 数字输入的输入验证
- 15. 验证输入
- 16. 验证输入
- 17. 输入验证
- 18. 验证输入
- 19. 验证输入数据
- 20. 验证数据输入
- 21. Laravel验证输入数组
- 22. javascript函数输入验证
- 23. 数字输入验证
- 24. 验证倍数输入
- 25. 验证整数
- 26. 验证整数
- 27. 验证整数
- 28. 验证整数
- 29. 验证输入的数字是整数还是“一半”
- 30. jquery验证八个整数和两位小数的输入
通过读取scanf函数的文档,并利用返回值。简单! – enhzflep
谢谢!返回值完成了这项工作。 – amulous