cannot convert parameter 1 from ‘unsigned char [1024]’ to ‘const char *’
byte 是字节数据类型 ,是有符号型的,可以表示-128—127 的数;
char是unsigned char;
byte是const char
char 是字符数据类型 ,是无符号型的,可以表示一个整数,不能表示负数。
用法举例:
char i = 85;//U对应ASCII是85
byte d3 = 127; // 如果是byte d3 = 128;会报错
byte d4 = -128; // 如果是byte d4 = -129;会报错
2、占用空间大小和大小范围不同
byte占1 个字节;大小范围为-128—127 ;
char占1 个字节:取值范围: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’为结束的字符串。 [2]
在C++中,下列程序是可以通过编译的:
char *p="abcd";
但如果用
signed char *p="abcd";
或
unsigned char *p="abcd";
都是不能通过编译的。
3、另外char可以表示中文字符,byte不可以。用法举例:
char e1 = ‘中’, e2 = ‘国’;
byte f= (byte) ‘中’; //必须强制转换否则报错