繁体   English   中英

有没有办法测试输入是否是C ++中的数字?

[英]Is there a way to test if an input is a number in C++?

问题全部在标题中。 我正在制作一个计算器,显然我需要输入。 我使用cin >>函数,但我想知道是否有办法测试输入,以确定它是否是一个数字。 如果我输入的不是数字,程序就会崩溃。 有内置函数/运算符吗? 请帮忙!

如果输入数字,则输入操作符将只读取整数。 否则它会将字符留在输入缓冲区中。

尝试这样的事情

int i;
if (cin >> i)
{
    // input was a number
}
else
{
    // input failed
}

atoisscanf是你的朋友,或者只是比较输入的charcode是否在“0” - “9”范围内

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM