1、# 后面跟一个字符编码可以表示这个字符, 字符编码可以用十进制或十六进制表示;
譬如字符 "A" 的编码是 65(十进制) 或 $41(十六进制).
ANSII 编码表参见: http://www.cnblogs.com/del/archive/2007/12/07/987071.html
--------------------------------------------------------------------------------
var
c: AnsiChar;
begin
c := #65;
ShowMessage(c); {A}
c := #$41;
ShowMessage(c); {A}
end;
--------------------------------------------------------------------------------
2、用 # 也可以表示双字节字符, 所有汉字编码参见: http://www.cnblogs.com/del/archive/2007/12/15/996290.html
--------------------------------------------------------------------------------
var
wc: WideChar;
begin
wc := #19975;
ShowMessage(wc); {万}
wc := #$4E07;
ShowMessage(wc); {万}
{双字节兼容单字节}
wc := #65;
ShowMessage(wc); {A}
wc := #$41;
ShowMessage(wc); {A}
end;
--------------------------------------------------------------------------------
3、多个用 # 表示的字符连接时, 可以省略 + 号.
--------------------------------------------------------------------------------
var
str: string;
begin
str := #65 + #66 + #67;
ShowMessage(str); {ABC}
str := #65#66#67;
ShowMessage(str); {ABC}
str := '万一的' + #32 + #68 + #101 + #108 + #112 + #104 + #105 + #32 + '博客';
ShowMessage(str); {万一的 Delphi 博客}
str := '万一的'#32#68#101#108#112#104#105#32'博客';
ShowMessage(str); {万一的 Delphi 博客}
end;
--------------------------------------------------------------------------------
另外 System 单元有个常量 sLineBreak, 它用来表示回车换行;
回车是 #13, 换行是 #10, 所以 sLineBreak 的值是 #13#10;
我们在输入提示时显示的是 sLineBreak = #$D#$A, 这不过是换成了十六进制显示.