1、char 是有符号的 ,uchar(unsigned char) 是无符号的,8-bit无符号整形数据,里面全是正数。
2、两者当整数用时有区别:
char 整数范围为-128到127( 0x80__0x7F),而unsigned char 整数范围为0到255( 0__0xFF ) 有时候想把整数数值限在255范围内,也用unsigned char
扩展资料:
char和uchar功能介绍:
char用于C或C++中定义字符型变量,只占一个字节,取值范围为 -128 ~ +127(-2^7~2^7-1)。
C语言中如int、long、short等不指定signed或unsigned时都默认为signed,但char在标准中不指定为signed或unsigned,编译器可以v编译为带符号的,也可以编译为不带符号的。
unsigned char是无符号字节型,char类型变量的大小通常为1个字节(1字节=8个位),且属于整型。
整型的每一种都有无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的),在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。