Char类型的变量c,是0-128还是0-255呢?用Byte(c)转换,然后转换成字符串,该怎么处理
Char类型的变量c,是0-128还是0-255呢?用Byte(c)转换,然后转换成字符串
可以让c是128-255吗?
------解决方案--------------------
可以是,楼主可以看看编码方案,中文的就不在标准ASCII中,比如我的签名.
------解决方案--------------------
是0-255,转换可以直接赋值给string,比如:
var
c:Char;
s:string;
begin
c:=#177;
s:=c;
s:=c+#153;
ShowMessage(s);
end;
------解决方案--------------------
var
b:byte;
c:char;
b:=$31;
c:=char(b);// '1 ' 或是:c:=chr(b);
c:= '2 ';
b:=ord(c);//$32 0x32H
------解决方案--------------------
只是有没有符号位而已,如果char在0-127,转byte,一样
如果是负数,那么由于byte是无符号的,所以会自动变成整数,将> 127
------解决方案--------------------
Char 0 - 255
Byte 0 - 255
范围没区别。
可以让c是128-255吗?
------解决方案--------------------
可以是,楼主可以看看编码方案,中文的就不在标准ASCII中,比如我的签名.
------解决方案--------------------
是0-255,转换可以直接赋值给string,比如:
var
c:Char;
s:string;
begin
c:=#177;
s:=c;
s:=c+#153;
ShowMessage(s);
end;
------解决方案--------------------
var
b:byte;
c:char;
b:=$31;
c:=char(b);// '1 ' 或是:c:=chr(b);
c:= '2 ';
b:=ord(c);//$32 0x32H
------解决方案--------------------
只是有没有符号位而已,如果char在0-127,转byte,一样
如果是负数,那么由于byte是无符号的,所以会自动变成整数,将> 127
------解决方案--------------------
Char 0 - 255
Byte 0 - 255
范围没区别。