我使用数字(int、float、double、long、unsigned),但是当我将其他字符放入控制台时(例如 ^[[A
或 *
).因此,我的程序崩溃了
如何保护我的程序免受这种错误输入的影响?
注意:我知道一些库函数,即 isdigit
或 isallnum
,但它们没有太大帮助
最佳答案
在 C 和 C++ 中执行此操作的方法是将所有输入读取为字符串,然后解析该字符串。
这就是为什么你不应该将 scanf("%d") 或 cin>> 整数用于调试/学生/业余爱好者程序以外的任何其他目的的原因之一。
关于c++ - 防止错误输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4814649/