C语言字符变量和数字常量怎么比较啊

某个字符型变量>10之后,做某件事可是这样好像不能实现,要怎么让字符变量和数字常量比较?

C语言中,字符变量就相当于是整型变量,和整型变量的用法一样。它和其他数字常量进行相关运算时就可以直接当做整型数字来用。比如:
(1)#include<stdio.h>
void main()
{
char x='a';
int y=68;
int z;

if(x>10)
{
z=x-y;
}
else
z=y-x;

printf("z=%d\n",z);
getch();

}
输出结果是:z=29 正确
(2)#include<stdio.h>
void main()
{
char x='a';
float y=68.5;
float z;

if(x>10)
{
z=x-y;
}
else
z=y-x;

printf("z=%f\n",z);
getch();

}
输出结果为:z=28.5 正确
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-10
数据在内存中都是以2进制形式储存,储存的2进制的值等于变量的值的ASCII码值
所以 字符常量和数字常量比较是用他们对应的ASCII码比较
由表知:字符'0'到'9' 'a'到'z''A'到'Z' 的ASCII码都>=48都大于数字常量0到9
第2个回答  2011-05-10
强制转换、将字符型的转换为数值常量即ASCII码
第3个回答  2011-05-10
char a = 'a';
int n = 10;
if (n < (int)a)
.....

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网