gpt4 book ai didi

c++ - isdigit() 意外行为?

转载 作者:太空宇宙 更新时间:2023-11-04 05:40:01 24 4
gpt4 key购买 nike

为什么 isdigit 没有按预期工作。我正在尝试检查输入是否为数字。如果输入是数字,则打印 True 否则打印 False

#include<stdio.h>
#include<ctype.h>

int main()
{
int h;
printf("Height: ");
scanf("%d", &h);
if (isdigit(h))
printf("True");
else
printf("False");
}

但它总是返回False

输入:

高度:Foo

最佳答案

因为您的期望不正确。对字符调用 isdigit() 以查看它是否包含十进制数字“0”-“9”。您在已经是二进制值的 int 上调用它。

关于c++ - isdigit() 意外行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21655826/

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