S seeok Unregistered / Unconfirmed GUEST, unregistred user! 2005-12-05 #1 假如说需要一个定长的字符串,譬如说是6位的,现在有一个stemp变量,值为'temp',那么要把它补成6位的,假如说补0,那么补ASCII表示的‘0’和补二进制表示的‘0’,有什么区别呢,这两种情况下stemp变量的值是多少呢?
假如说需要一个定长的字符串,譬如说是6位的,现在有一个stemp变量,值为'temp',那么要把它补成6位的,假如说补0,那么补ASCII表示的‘0’和补二进制表示的‘0’,有什么区别呢,这两种情况下stemp变量的值是多少呢?
S seeok Unregistered / Unconfirmed GUEST, unregistred user! 2005-12-05 #2 假如说需要一个定长的字符串,譬如说是6位的,现在有一个stemp变量,值为'temp',那么要把它补成6位的,假如说补0,那么补ASCII表示的‘0’和补二进制表示的‘0’,有什么区别呢,这两种情况下stemp变量的值是多少呢?
假如说需要一个定长的字符串,譬如说是6位的,现在有一个stemp变量,值为'temp',那么要把它补成6位的,假如说补0,那么补ASCII表示的‘0’和补二进制表示的‘0’,有什么区别呢,这两种情况下stemp变量的值是多少呢?
L liuchong Unregistered / Unconfirmed GUEST, unregistred user! 2005-12-05 #4 (1):ASCII的0是空字符,即'' (2):二进制的0指的是位,而不是字符 一个AnsiChar是8位的,它的8位分别可以是0或1,不同的组合是不同的结果, 这个问题,你问的让人无法答
M Mike1234567890 Unregistered / Unconfirmed GUEST, unregistred user! 2005-12-05 #6 估计是你分太少了没人愿意回答 如果补ASCII码的话就变成了'temp00',显示的时候就显示temp00 如果补二进制的'0',其实应该说成是十六进制的'0' 那就变成了'temp'#0#0,这样显示的时候只显示temp
估计是你分太少了没人愿意回答 如果补ASCII码的话就变成了'temp00',显示的时候就显示temp00 如果补二进制的'0',其实应该说成是十六进制的'0' 那就变成了'temp'#0#0,这样显示的时候只显示temp
L lzh7735 Unregistered / Unconfirmed GUEST, unregistred user! 2005-12-05 #7 二进制的0出现在字符串中,相当于说这个字符串到这里已经结束了,相当于#0。而加上一个ASCII的'0',是以可见字符的形式追加的。你可以试试: var stemp: string; begin stemp := 'temp'; stemp[3] := #0; showmessage(stemp) // 得到的结果是'te' end;
二进制的0出现在字符串中,相当于说这个字符串到这里已经结束了,相当于#0。而加上一个ASCII的'0',是以可见字符的形式追加的。你可以试试: var stemp: string; begin stemp := 'temp'; stemp[3] := #0; showmessage(stemp) // 得到的结果是'te' end;