gpt4 book ai didi

c++ - cin 的 isdigit 问题

转载 作者:太空狗 更新时间:2023-10-29 20:46:26 25 4
gpt4 key购买 nike

我有一个有符号整数变量当我在 main 中执行此操作时,它也会给我整数值的“错误”。

int main(){
unsigned int a;
while(cin>>a){
if(!isdigit(a)){
cout<<"Error"<<endl;
}
}
}

[编辑]:感谢所有回复,我明白了这个问题。现在,我如何检查 cin 是否只读取整数而不读取字母或任何其他字符。在 C++ 中是否有任何函数。谢谢

最佳答案

问题是 isdigit() 接受一个字符,而不是一个整数。

当字符为 '0''1' 等时返回 true...其 ascii 值为 4849 等...

试试这样:

char a;
while(cin>>a){
if(!isdigit(a)){

关于c++ - cin 的 isdigit 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8198252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com