?
fseeko, ftello ne te convienne pas?
Version imprimable
Cette fonction n'existe pa non-plus dans mon <stdlib.h>
Sous Windows, la C Run-Time Library (CRT) de Microsoft propose _fseeki64() et _ftelli64().
Avec un peu de chance, un simple #define suffira pour les renommer en fseeko et ftello (il faudra peut-être aussi un typedef ou deux).
Edit: Seulement à partir de la version 2005. Donc, indisponible sous MinGW, à moins que MinGW propose lui-même une extension...
Si il existe bien une seule règle en C/C++ sur les types entier c'est celle que sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long)Citation:
Envoyé par toxcct
Et il n'en existe pas d'autre....
Par contre chaque compilateur définit ses propres int8, int16, int32 et int64...
Pour ce qui est de x64 (que ce soit sous Vista/XP/...) avec VisualC++ (parceque bon, rien ne dit qu'un autre compilo fasse la même chose !):
sizeof(int)=sizeof(long)=32, comme sous Win32
mais sizeof(longlong)=sizeof(size_t)=sizeof(void*)=64 ....
Il en existe un certain nombre d'autres.Citation:
Si il existe bien une seule règle en C/C++ sur les types entier c'est celle que sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long)
Et il n'en existe pas d'autre....
sizeof(char) = 1
char fait au moins 8 bits
short fait au moins 16 bits
sizeof retourne la taille en bytes, pas en bits.Citation:
sizeof(int)=sizeof(long)=32, comme sous Win32
Et un byte ne fait pas forcément 8 bits.
Ce n'est pas la plateforme destination qui décide de la taille d'un int ou d'un long, mais l'implémentation du language C ou C++ utilisé (c'est à dire le compilateur).
@loufoque: quelques précsions...
"Il en existe un certain nombre d'autres."
Euh, non, pas que je sache. Mais ma version du standard date un peu (15 octobre 2003... hum).
"short fait au moins 16 bits"
Non. La norme précise juste sizeof(short) >= sizeof(char). Quand à l'affirmation "char fait au moins 8 bits", elle est fausse aussi: un char est définit comme pouvant encoder au minimum l'ensemble des caractères basiques (basic character set) utilisés dans le code source d'un programme (§3.9.1-1 de la norme C++), soit 96+4 caractères (§2.2-1, §2.2-3 de la norme C++). Un char peut donc être encodé sur 7 bits si besoin.
Comment ça, je pinaille... :roll:
Oui tout ca est passionnant, mais ce serait pas mal si vous jetiez un oeil à la question originale !
Hé bien, avec BDS6 je ne dispose ni de fseeko ni de _feeki64. Alors je repose ma question : comment puis-je sur mon system windows xp 64 lire des fichiers > 4GO sous borland developper studio 2006 C++. ?