求指点C++里面isdigit()的用法

我记得isdigit()的用法是如果参数为数字,则返回ture。但是使用过程中还是有些弄不明白的地方,比如说下面的程序:
#include<iostream>
#include<string>
#include<cctype>
using namespace std;
int main()
{
int n;
cin>>n;
if(isdigit(n))
cout<<"Yes";
else
cout<<"No";
return 0;
}
输入n为数字时,不是应该执行if的语句输出Yes吗,可是为什么运行时会输出No,是其他地方有问题吗?

isdigit()里的参数是指ASCII码数字所代表的字符,你查一下ASCII字符表,如:97表示A字符。
/* 找出str字符串中为阿拉伯数字的字符*/
#include<ctype.h>
main()
{
char str[]="123@#FDsP[e?";
int i;
for(i=0;str[i]!=0;i++)
if(isdigit(str[i])) printf("%c is an digit character\n",str[i]);
}
参考一下这段代码。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-26
#include<iostream>
#include<string>
#include<cctype>
using namespace std;
int main()
{
     char c;
     cin>>c;
     if(isdigit(c))//判断单个字符是否为数字,不是int型的整数
        cout<<"Yes";
     else
        cout<<"No";
     return 0;
}

本回答被提问者采纳
第2个回答  2013-08-03
isdigit判断输入是否在'\0'到'\9‘之间,你如果输个字母a,那明显不是digit追问

噢....懂了

追答

懂了麻烦采纳

求指点C++里面isdigit()的用法
isdigit()里的参数是指ASCII码数字所代表的字符,你查一下ASCII字符表,如:97表示A字符。\/* 找出str字符串中为阿拉伯数字的字符*\/ include<ctype.h> main(){ char str[]="123@#FDsP[e?";int i;for(i=0;str[i]!=0;i++)if(isdigit(str[i])) printf("%c is an digit character\\n...

isdigit函数怎么用
isdigit()函数是计算机应用C语言中的一个函数,主要用于检查参数c是否为阿拉伯数字0到9。表头文件:#include <ctype.h>(C语言),#include <cctype>(C++)。返回值:若参数c为阿拉伯数字,则返回非0值(不一定是1或TRUE,因为TRUE值和具体编译器相关),否则返回NULL(0)。函数代码:isdigit()函数包含...

isdigit()函数是什么
结论:isdigit()函数是C语言(和C++)中一个实用的内置函数,其主要功能是检查给定的字符c是否符合阿拉伯数字0到9的条件。以下是关于它的详细介绍:在C和C++编程中,isdigit()函数被定义在ctype.h或cctype头文件中,无论是使用#include <ctype.h>还是#include <cctype>。它的核心作用是通过返回值来判...

isdigit(int ch) 具体用法
isdigit()函数用于判断输入的字符是不是一个数字,它接受的是一个字符的ASCII码,也就是说,它的作用是判断传入的ASCII码是不是大于等于48且小于等于57。ctype.h中声明的这些类似的函数都是针对字符型变量基于其对应的ASCII值进行判断的,并不能对输入的值的类型作出判断。

c++中std::isdigit(),std::ispunct(),std::isalpha()各有什么作用...
std::isdigit()判断是否为整形数 ,std::ispunct(),判断是否为标点符号或者特殊符号 std::isalpha()判断数否为英文字符

(C++) 在C++中isdigit(s[j])表示什么?
isdigit是对输入的字符作判断,如果输入的整数不是数字字符所的ASCII码,就是输出0 。

ctod和isdigit在c语言中指的是什么
1、isdigit是计算机C(C++)语言中的一个函数,主要用于检查其参数是否为十进制数字字符。原型为:其作用为:判断c指定的字符是否为数字字符,即'0'-'9',如果是,则返回1;否则返回0。isdigit函数的实现也比较简单,这样就可以:2、ctod应该是一个自定义函数的函数名称。在c语言中并没有这样的函数,...

C++ if语句判断是否非数字以及大小
if( !isdigit(input) ){\/\/判断是否是数字 cout << "您输入的不是符合要求的数字,请重新输入:";cin >> input;} else{ x=atof(a);\/\/该函数把字符串(即数组中的全部元素)转换成数字 } if(x<0||x>4){ cout<<"错误"<<endl;exit(0);} cout << input;} 差不多是这样子的,你...

用c++编程定义内联函数,判断一个字符是否为数字字符。
首先 include <ctype.h> 然后 char c;c = getchar();用 isdigit(c);来判断是否为数字,如果是数字那么会返回非0 isalpha(c);来判断是否为字母,如果是字母那么返回非0 class soemclassname { ```bool isNumber(char c){ return isdigit(c);} ```} ...

c++控制电脑关机
if(!isdigit(s[i]))return 0;return 1;} int main(){ char ch,str[101]={"shutdown \/s \/t "},stime[101]={"600"};int f;puts("1.Shut down定时关机");puts("2.Cancle取消");puts("3.Exit退出");while((ch=getchar())!=EOF){ getchar();switch(ch){ case 'S':case '...

相似回答