我在Windows 7,64位和NTFS上。 我正在構建一個必須是32位的DLL。我有一個非常簡單的例程,我想用C++來實現。我正在閱讀大文件使用:如何在Windows上查看超過4GB的kg()文件?
unsigned long p;
ifstream source(file);
streampos pp(p);
source.seekg(pp);
對於超過4GB的文件,我嘗試使用無符號long long,但它不工作。 我在做什麼錯?我正在使用GNU GCC,它可以在嘗試MSVC Express 2008/2010時使用嗎?
更新:
似乎,什麼是錯我的GCC。現在,我正在使用MSVC測試您的提議,看起來可行。 MSVC使用_int64來表示streampos/streamoff對象,我將在稍後使用GCC進行檢查。
我遇到了這個:http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8610 – 2012-02-23 14:39:54