首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

初学C++,在isdigit上碰到一些晕乎乎的有关问题,求解

2013-08-01 
初学C++,在isdigit上碰到一些晕乎乎的问题,求解我是C++初学者。在看书写习题时碰到一个问题,发现居然是isdi

初学C++,在isdigit上碰到一些晕乎乎的问题,求解
我是C++初学者。
在看书写习题时碰到一个问题,发现居然是isdigit的问题。
我在我机器上测试了一下。
发现
int i = 1;
cout << isdigit(i);
输出的是0

int i = '1';
cout << isdigit(i);
输出的是非0

请问为什么差了个单引号,isdigit就不认它是数字了呢。
我用cin >> var ,输出的依然是0,不认数字。
我用表达式 augend + addend(1+4之类的) , 也是不认它是数字,加上(int)转型,也不认是数字,好迷惑啊,然后翻看书中的例子,也是类似这么用的啊,为啥他们有用,我的就没用,求指教。
初学C++,在isdigit上碰到一些晕乎乎的有关问题,求解
[解决办法]
isdigit 本来就是判断一个字符 是否是  '0' ~ '9' 之间的用于表示数字的字符.
[解决办法]
没有, C++ 是静态语言, 如果一个变量被声明成 int 类型, 那么它存放的就肯定是一个整数, 不可能是字符串或浮点数之类的其它类型了. 所以, 根本不需要进行判断.

热点排行