Question

Je suis sur Windows 7, 64bit et NTFS. Je construis une DLL qui doit être 32 bits. J'ai une routine très simple que j'aimerais implémenter en C ++. Je lis un grand fichier en utilisant:

unsigned long p;
ifstream source(file);
streampos pp(p);
source.seekg(pp);

Pour les fichiers sur 4 Go, j'ai essayé d'utiliser unsigned longtemps, mais cela ne fonctionne pas. Qu'est-ce que je fais mal? J'utilise GNU GCC, serait-il utile d'essayer MSVC Express 2008/2010?

Mise à jour:

Il semble que quelque chose ne va pas avec mon CCG. En ce moment, je teste vos propositions en utilisant MSVC et cela semble que cela fonctionne. MSVC utilise un _INT64 pour représenter les objets StreamPos / StreamOff, je vérifierai plus tard avec GCC.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top