一、C++
参考:《C++ primer plus》第六版,第三章
c++中没有byte数据类型,只有char。char数据类型分char、unsigned char 和 signed char三种。
char 本身既不是有符号的,也不是无符号的,是否有符号由C++实现决定,由开发人员将这种类型与硬件属性匹配起来。
unsigned char,取值范围[0, 255]。
signed char,取值范围[-128, 127]。
二、c#
参考:c#数据类型
参考:《C#高级编程》第九版,第二章,2.4.3
1、byte
byte 取值范围[0, 255]。
sbyte:取值范围[-128, 127]。
byte是标准的8位类型,默认是无符号的,其有符号的版本是sbyte,有其特殊名称。
2、char
c#支持char类型,用以保存单个字符值,表示一个16位的Unicode字符值。大小范围 是0—65535。
char a = ‘A’;
char 变量赋值必须用单引号,双引号会被认作是字符串,会产生错误。
在强调类型的安全性时,c#认为byte与char完全不同,二者的转换必须显式写出。
三、java
参考《java入门经典》
1、byte,字节型。
是最小的整数类型,8位,取值范围[-128, 127]。完全像整数一样做各种运算。
2、char,字符型。
java使用Unicode码代表字符,16位,大小范围 是0—65535。
char不是整数,但可以像整数一样做运算操作:
char ch = 'X';
ch++;
System.out.println("ch is now " + ch);
ch is now Y