关于#号的用法

①# 后面跟一个字符编码可以表示这个字符, 字符编码可以用十进制或十六进制表示;譬如字符 "A" 的编码是 65(十进制) 或 $41(十六进制).
---------------------------------
var
  c: AnsiChar;
begin
  c := #65;
  ShowMessage(c); {A}
  c := # $41;
  ShowMessage(c); {A}
end;
ANSII 编码表参见( http://www.cnblogs.com/28088191/archive/2008/06/13/1220352.html)
--------------------------------
②用 # 也可以表示双字节字符, 所有汉字编码参见( http://www.cnblogs.com/28088191/archive/2008/06/13/1220366.html)
var
  wc: WideChar;
begin
  wc :=# $732B;
  ShowMessage(wc); {猫}
  wc := 29483;
  ShowMessage(wc); {猫}

  {双字节兼容单字节}
  wc := #65;
  ShowMessage(wc); {A}
  wc := # $41;
  ShowMessage(wc); {A}
end;
------------------------------------------
③多个 # 表示的字符连接时, 可以省略 + 号.表示字符相连,这在SQL语句中常用
--------------------------------------------
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;

---------------------------------------
SQL语句中是这样用的:
-------------------------
var SQL:String;
SQL:='Select * From 表 Where 日期字段 Between #' +DateTimeToStr(DateTimePicker1.Date)+'# And #'+DateTimeToStr(DateTimePicker2.Date) +'#';


你可能感兴趣的:(用法)