chechy(chechy):我说的整型是长整型呀

解决方案 »

  1.   

    longint和int一样,都是32位,4byte。
    只有int64才是64位。
      

  2.   

    各位大侠我本来是做一个从000000到999999全部显示的东东。但是在我机器上只能从000到999的全部显示,原以是整型不够长,后来发现整型支持到最大值为2147483647,朋友的机器上能显示0000到9999的全部显示,如果再大就会没响应。不知道是不是程序的问题,谁帮我分析一下?procedure TForm1.Button1Click(Sender: TObject);
    var
      x,y,i,j,w:integer;
      z:array of integer;
      s:string;
    begin
    memo1.Clear;
    s:='';
    x:=length(edit1.text);
    y:=length(edit2.text);if y>x then
    begin
      setlength(z,y-x);
      for i:=0 to (y-x-1) do
      begin
        z[i]:=0;
       next;
      end;
      w:=strtoint(edit1.text);
      for j:=0 to (strtoint(edit2.text)-strtoint(edit1.text)) do
      begin
        for i:=0 to (y-length(inttostr(w))-1) do
        begin
           s:=s+inttostr(z[i]);
        end;
        s:=s+inttostr(w)+'  ';
        w:=w+1;
        next;
      end;
      memo1.lines.Add(s)
    end;
    end;
      

  3.   

    我的平台是win2000server+delphi5.0
      

  4.   

    我是低手,我的delphi6,调试了一下,11000调试,花几秒钟时间,要是19000cpu利用率100,我想这不是数据类型的缘故吧,只是处理器运行快慢的问题,再说,这样大的算法在程序中应该用不到的,就像生成子窗口一样,delphi若生成100个多的话,还不如vb运行的快。
    我用一下:
     memo1.Clear;
      try
        a:=strtoint(edit1.Text);
        for i:=0 to a  do
        begin
           s:=s+inttostr(i)+' ';    end;
        memo1.Lines.Add(s);
       except
       exit;
       end;
    试了一下,99999五个9,花几秒出来,所以我想这个问题之所以很少人回答,就是大家应该多明白这个的道理的了,只是我还是低手,呵呵!!!!!还来调试吧!!以后这个问题要自己解决呀,多想想,不过我也不确定我现在说得对,我是低手,嘿嘿!!!!