关于VC6.0,请教两个基础问题:
1.在VC6.0中,UINT类型占几个字节?最大能表示多大的无符号整数?它与unsigned long有何区别?
2.MFC中的类CFile,使用成员函数Read(void* lpBuf,UINT nCount),最大可以一次读取1MB以上的内容吗?
谢谢。

解决方案 »

  1.   

    1、在win32下都是4个字节!最大可以表示:0XFFFFFFFF
    2、可以读取1M以上的内容,最大可以读取好像是:0XFFFFFFFF字节!
      

  2.   

    1、在win32下都是4个字节!最大可以表示:0XFFFFFFFF
    2、可以读取1M以上的内容 ,但不建议这样
      

  3.   

    vc6.0中
    1.UINT 是unsignal int,与unsignal long都是32位的。
    2.因sp版本不同而不同。我以前在使用一个非常老的版本时读取超过64K的文本文件时就会出现问题(64K以后是乱码),打上sp5就可以了。
      

  4.   

    1. 和vc无关,和平台有关,win32是4字节 0xffffffff
    2. 可以,最多4G 0xffffffff
      

  5.   

    1. 和vc无关,和平台有关,win32是4字节 0xffffffff
    2. 可以,最大值不知道,1M是没问题的
      

  6.   

    win32是4字节
    在win32中int 和long是一样的都是四个字节
    所以和unsigned long也是一样的
      

  7.   

    1.在VC6.0中,UINT类型占几个字节?最大能表示多大的无符号整数?它与unsigned long有何区别?
    2.MFC中的类CFile,使用成员函数Read(void* lpBuf,UINT nCount),最大可以一次读取1MB以上的内容吗?1. UINT的大小是根据操作系统来的,32位系统为4个字节,64位系统为8个字节。
      32位系统最大2的32次方,64位系统是2的64次方,在32为系统上无区别,64为系统上long表示16个字节
    2. vc6.0不行,如果要一次读取大于64K的内容,必须用ReadHuge,2003以上可以直接用Read 
      

  8.   

    CFile::Read(),有同学说可以读1MB,有同学说可以但不建议,也有同学说只能读64KB。
    我试过1MB,程式就崩溃了;msdn也没有明确说法,只说那个ReadHuge()过时了云云。
    不知究竟能读1MB吗?迷茫。请指点迷津,谢谢。
      

  9.   

    1. 和vc无关,和平台有关,win32是4字节 0xffffffff
    2. 可以,最大值不知道,1M是没问题的