int('13012341234')---好象数字太大了吧

解决方案 »

  1.   

    Integer ?147483648..2147483647 signed 32-bit
    Cardinal 0..4294967295 unsigned 32-bit
    超过范围了
      

  2.   

    你的13012341234已经超出integer的范围了;
    可用int64;

    i:int64;
    i:= StrToInt64('13012341234')+1;
      

  3.   

    float i=StrToFloat("13012341234");
      

  4.   

    double i=StrToFloat("13012341234");//调试通过
      

  5.   

    var x:int64;
        s:String;
    begin
        s:='13012341234';
        x:=StrToInt64Def(s,0);
        ShowMessage(intToStr(x));
    end;
      

  6.   

    var x:int64;  // 超长整数,OK!!!!!!!!!!!!!!!!!!!
        s:String;
    begin
        s:='13012341234';
        x:=StrToInt64(s);
        ShowMessage(intToStr(x));
    end;
      

  7.   

    StrToInt64('13012341234')可以。
    我试过了。
      

  8.   

    8个字节的超长整数范围 
    Int64 -2^63..2^63-1 signed 64-bit
    十进制相当于20位十进制足够了
      

  9.   

    这int64可是巨无霸呀, 20位十进数字
      

  10.   

    -1152921504606846976 <=int64<= 1152921504606846975  var x:int64;
       s:string;
    begin
        x:=$fffffffffffffff;   // Max 
        s:=intToStr(x);
        Edit1.Text:=s;
        ShowMessage(s);
    end;