关于VC6.0,请教两个基础问题:
1.在VC6.0中,UINT类型占几个字节?最大能表示多大的无符号整数?它与unsigned long有何区别?
2.MFC中的类CFile,使用成员函数Read(void* lpBuf,UINT nCount),最大可以一次读取1MB以上的内容吗?
谢谢。
1.在VC6.0中,UINT类型占几个字节?最大能表示多大的无符号整数?它与unsigned long有何区别?
2.MFC中的类CFile,使用成员函数Read(void* lpBuf,UINT nCount),最大可以一次读取1MB以上的内容吗?
谢谢。
2、可以读取1M以上的内容,最大可以读取好像是:0XFFFFFFFF字节!
2、可以读取1M以上的内容 ,但不建议这样
1.UINT 是unsignal int,与unsignal long都是32位的。
2.因sp版本不同而不同。我以前在使用一个非常老的版本时读取超过64K的文本文件时就会出现问题(64K以后是乱码),打上sp5就可以了。
2. 可以,最多4G 0xffffffff
2. 可以,最大值不知道,1M是没问题的
在win32中int 和long是一样的都是四个字节
所以和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
我试过1MB,程式就崩溃了;msdn也没有明确说法,只说那个ReadHuge()过时了云云。
不知究竟能读1MB吗?迷茫。请指点迷津,谢谢。
2. 可以,最大值不知道,1M是没问题的