long可存放的是从  -2147483648 到  2147483648
但是我要放的数比这个大,比如:2148550880该怎么办啊?single会有特殊符号,不能用

解决方案 »

  1.   

    用double,特殊符号是什么意思?
      

  2.   

    variant提示:使用了vb不支持的自动化类型用Double类型变成2.75372315641E-316
    其中的"E-"不就是特殊符号吗
      

  3.   

    Currency 数据类型
          Currency 变量存储为 64 位(8 个字节)整型的数值形式,然后除以 10,000 给出一个定点数,其小数点左边有 15 位数字,右边有 4 位数字。这种表示法的范围可以从 -922,337,203,685,477.5808 到 922,337,203,685,477.5807。Currency 的类型声明字符为at号 (@)。
      

  4.   

    decimal在vb6里面用不了啊
    Currency类型居然把我2148550880左右的数字显示为5516.9544?
      

  5.   

    string该如何使用啊?
    dim id as string,其中id就是2148550880.这样定义,程序直接就出错了
      

  6.   

    dim id as variant
    id=cdec(2148550880)
    decimal类型是variant的子类型,是可以使用的
      

  7.   

    现在是要从内存中取出一个值,这个值大于2148550880,像:
        ReadProcessMemory hProcess, ByVal &H8A9B6CD, id, 4, 0& 这个id的值大于2148550880,我该怎么做?
    dim id as variant
    ReadProcessMemory hProcess, ByVal &H8A9B6CD, id, 4, 0&          /////结果id一直为0
    ReadProcessMemory hProcess, ByVal &H8A9B6CD, cdec(id), 4, 0&    /////程序崩溃
      

  8.   

    用type
    ……
    end type接受内存拷贝。
      

  9.   

    type和byte的方法麻烦二位把我楼上的程序复制修改一下吧...
    在csdn和google找type的用法还没什么进展....看来这帖子给20分少了,得加点..
      

  10.   

    Dim id As Long
    ReadProcessMemory hProcess, ByVal &H8A9B6CD, id, 4, 0&            
    ReadProcessMemory hProcess, ByVal id + &H20, id, 4, 0&
    ReadProcessMemory hProcess, ByVal id + &H250, id, 4, 0&
    Label3.Caption = Abs(guaiid)
    --------------------------------------------------------
    id的值大于2148550880,这就是我的程序了
      

  11.   

    ReadProcessMemory hProcess这个API的第四个参数是什么,nSize吧既然你传递的这个变量超出long型4字节了。既然这个函数返回0,就表明调用失败。
    如果不是你API引用和程序的其他地方有问题,我估计就是这个地方有问题。
      

  12.   

    即使把size的位置改成8也没用啊..一样会得到2146419473这个数
    程序该怎么改?
      

  13.   

    vc中有LONGLONG这个数据结构阿
    很大的数也行的
    又不是标准c++
    可以用的
      

  14.   

    long long类型??
    我用的VB6.0。。有这个类型吗。。?有的话该怎么用?
      

  15.   

    请注意API传入在参数,那个id最大也只能接受long型数据,你用别的大于long的也传不进去,溢出的部分会被api舍弃的。所以你求那个比long还大的有用吗?