如何把char变成int C语言

如题所述

C语言中char类型本身就是整型类数据变量,可以直接赋值给int变量
char占一个字节内存空间,可表示的有符号数为-128~127,无符号数0~255
C语言中字符是按其ascii值进行存储的,如,字母'a',其实际存储在内存中的数据为97,只是在输出时,因格式串的不同,表现出来的形式不同:
printf("%c", 'a' ); //按字符输出,显示a
printf("%d", 'a'); //按整数输出,显示97
printf("%x", 'a'); //按16进制输出,显示61

int占四字节内存空间,char赋值给int,系统自动进行高位补符号位,如,正数前补0,负数前补1.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-22
C之中可以将一个char直接赋值给一个int变量,
char c='a';
int b = c; //这样就可以的,b的值为97了,即‘a'的ascii码值

你如果要输出一个char的整数形式,可以用%d
char c='a';
printf("%d", c);
输出的结果就是: 97
第2个回答  2011-12-22
char c;
int a=c;
不会有问题的,int和char都是整型,而且int“级别”比char高
第3个回答  2011-12-22
(int) 强制转换
第4个回答  2011-12-22
(int) 强制转换本回答被提问者采纳