C语言中无符号字符型中字符型是什么意思

Python012

C语言中无符号字符型中字符型是什么意思,第1张

就是字符的意思,

unsigned

char

c

c

=

'a'

定义一个无符号字符变量c,并初始化为字符a,字符一般都用单引号来表示。

字符一共128个,也就是常见的ascii码表,每一个字符都对应一个ascii码值。

无符号类型就是不表示负数,只表示正数的数据类型。通常在数据类型关键字前加unsigned。无符号的数据类型主要有以下几类:unsigned char // 无符号字符型 ,能表示的数的范围为0~(2^8-1)unsigned int // 无符号整型 ,能表示的数的范围为0~(2^16-1)unsigned long int // 无符号长型 ,能表示的数的范围为0~(2^16-1)

在C语言中,unsigned char是无符号字符类型。

char是C/C++整型数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed,但char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器还可以通过编译开关来指定它是有符号数还是无符号数。

在除char以外的数据类型中,如果需声明无符号类型的话就需要在类型前加上unsigned。无符号版本和有符号版本的区别就是无符号类型能保存2倍于有符号类型的正整数数据,比如16位系统中一个short能存储的数据的范围为-32768~32767,而unsigned能存储的数据范围则是0~65535。

由于在计算机中,整数是以补码形式存放的。根据最高位的不同,如果是1,有符号数的话就是负数;如果是无符号数,则都解释为正数。

扩展资料:

int与unsigned char的类型转换注意事项:

int/unsigned int变量赋值给 unsigned char变量是会发生字节截断(9位和高于9位的将被程序自动丢弃)。

例如:unsigned int a = 0xFFFFFFF7unsigned char b = (unsigned char)a

此时b的值为 0xF7.

参考资料来源:百度百科-unsigned char