var 
   a:char;问题1 当a:=1;时提示错误  为什么2 a:=#1;   无错误   请问这个#号是什么作用。

解决方案 »

  1.   

    1.char和integer不一致
    2.#转义字符
      

  2.   

    #和后面的数字一起表示一个字符,ASCII码为数字的值。
      

  3.   

    可以  A:=char(1);强制类型转换 =  A:=#1;
     A:=char(97);
    a 的 ASCII码为97 
    showMessage(A);显示a 
      

  4.   

    delphi不像c,编译器对类型的检查是比较苛刻的。类型不符就不行,尽管可能是同一个东西。dephi中char代表一个字符。你不能用整数给他赋值。
    当然直接操控内存就没有问题了。如:
    var  
      a:char;
    begin
      fillchar(a,1,65);