一文详解C语言char类型中的存储
Jambo! 人气:0char是如何存储的
字符型(char)用于储存字符(character),如英文字母或标点。但是char
类型在内存中并不是以字符的形式储存,而是以ASII码的形式储存,也可以说char
类型储存的实际上是整数。所以char
类型也被归类为整形家族。
int main() { char c = 'A'; printf("%d\n", c); printf("%c\n", c); return 0; }
从上面的代码可以看出,因为char类型储存的是整形,所以可以以正数的形式打印出
打开内存窗口,也可以看出char
是以整数的形式存储:
既然知道char
实际上是整形,所以也可以用int
类型对char
类型赋值
int main() { char c = 65; printf("%d\n", c); printf("%c\n", c); return 0; }
以
%d
输出就是输出存储在内存中的整形,以%c
输出就会输出初始化时整数对应的ASKII码字符
其实关于由int
类型对char
赋值,以及对于char
类型之间的运算,其实都会经历一个操作叫做:整形提升
,整形提升的详细介绍在另一篇文章里
加载全部内容