我有一个有符号整数变量
当我在 main 中执行此操作时,它也会给我整数值“错误”。
int main(){
unsigned int a;
while(cin>>a){
if(!isdigit(a)){
cout<<"Error"<<endl;
}
}
}
[编辑]:
感谢所有的回复,我理解了这个问题。现在,如何检查 cin 是否仅读取整数而不是字母或任何其他字符。 c++中有没有这样的函数。谢谢
问题是isdigit()
接受一个字符,而不是一个整数。
当字符为时返回 true'0'
, '1'
等...其 ascii 值为48
, 49
, etc...
尝试用这种方法代替:
char a;
while(cin>>a){
if(!isdigit(a)){
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)