Donc fread se comporte de façon inattendue sur Win7 x64.Windows fread comportement inattendu
file = fopen(path, "rb");
fseek(file, 0, SEEK_END);
fileSize = ftell(file);
fseek(file, 0, SEEK_SET);
buffer = malloc(fileSize);
length = fread(buffer, fileSize, 1, file);
fread retourne 1 octet comme étant lu alors que (ferror et les deux feof retourner 0)
length = fread(buffer, 1, fileSize, file);
fread retourne le même nombre d'octets lus comme fileSize. MSDN dit "La fonction fread lit jusqu'à compter les éléments de taille octets du flux d'entrée et les stocke dans le tampon." Ce que j'interprète comme signifiant que chaque morceau de code devrait lire la même quantité de données. Est-ce que quelqu'un sait pourquoi Fread ne fonctionne pas comme je l'attend?
merci beaucoup – Matt