c++ - 防止错误输入

标签 c++ c error-handling input

我使用数字(int、float、double、long、unsigned),但是当我将其他字符放入控制台时(例如 ^[[A* ).因此,我的程序崩溃了

如何保护我的程序免受这种错误输入的影响?

注意:我知道一些库函数,即 isdigitisallnum,但它们没有太大帮助

最佳答案

在 C 和 C++ 中执行此操作的方法是将所有输入读取为字符串,然后解析该字符串。

这就是为什么你不应该将 scanf("%d") 或 cin>> 整数用于调试/学生/业余爱好者程序以外的任何其他目的的原因之一。

关于c++ - 防止错误输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4814649/

相关文章:

java - Akka:如何安排延迟间隔不断增加的失败重试?

c - 客户端/服务器中的 write()/read(),C 中的 pthread 应用程序在非主线程上总是返回 -1?

c++ - 访问存储在计算机内存中的信息时的查询时间问题

c++ - 使用 Boost Spirit 解析带有数组的结构

c++ - 编写一个可以打开和使用另一个程序的程序 : (Audio program)

C、getopt()是如何更新的

c - 是否可以在 FreeBSD 中使用 ubuntu 的共享对象库?

error-handling - Gulp 4即使出现错误也要继续观察

java - Android 随机线程错误

C++ : Interix signals