c语言 char占几个字节??

Python012

c语言 char占几个字节??,第1张

只占一个字节

char用于C或C++中定义字符型变量,只占一个字节,取值范围为 -128 ~ +127(-2^7~2^7-1)。

C语言中如int、long、short等不指定signed或unsigned时都默认为signed,但char在标准中不指定为signed或unsigned,编译器可以编译为带符号的,也可以编译为不带符号的。

扩展资料

(1)定义:char型数据是计算机编程语言中只可容纳单个字符的一种基本数据类型。

(2)取值范围:char : -2^7 ~ 2^7-1 ;

signed char: -2^7 ~ 2^7-1

unsigned char : 0 ~ 2^8-1

而且关于char还有一个特殊的语言就是char *,它在C/C++中有专门的语义,既不同于signed char *,也不同于unsigned char *,专门用于指以'\0'为结束的字符串。

char的取值范围为-128~127,所以char ch = 255其实为char ch = -1

所以printf("%d , %d , %d\n" , ch , ch + 1 , ch + 2)输出-1,0,1

char型变量取值范围是-128---+127,是针对当把该变量看成整型数时而言的。负值对于字母没有意义。

char型变量取值范围是-128---+127这一说法本身存在问题,char看成无符号数的话,取值范围就是0--255了(对应扩展的ASC码)。