procedure TForm1.Button1Click(Sender: TObject);
var x,y,i:integer;
var a:integer=10000;    这行代码有问题
begina:=a+1;
   edit3.Text:=inttostr(s)
end;请问var a:integer=10000为什么我在这边直接给变量a赋初值为什么会运行不了呢,什么原因? 没赋初值正常运行

解决方案 »

  1.   

    delphi的语法规则,局部变量不可在声明时做初始化
      

  2.   

    语法规定而已,只有全局变量才能赋初始值,而且,对于全局变量,系统会自动赋初始值。不过,局部变量,可以初始化,但是不能赋初始值。在实现部分(begin..end),对于结构体、指针、数组还是建议初始化。
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var x,y,i:integer;
     a:integer;    这行代码有问题
    begin
    a :=10000;
    a:=a+1;
       edit3.Text:=inttostr(s)
    end;
      

  4.   

    1.变量申明(全局和局部)只可定义,不可赋值
    2.如果要赋值只能是常量const