#define fileSize 100000
int main(int argc, char *argv[]){
char *name=argv[1];
char ret[fileSize];
FILE *fl = fopen(name, "rb");
fseek(fl, 0, SEEK_END);
long len = fileSize;
fseek(fl, 0, SEEK_SET);
//fread(ret, 1, len, fl);
int i;
*(ret+fileSize) = '\0';
for (i=0; i<fileSize; i++){
*(ret+i)=fgetc(fl);
printf("byte : %s \n", ret);
}
fclose(fl);
}
Dans le code ci-dessus, lorsque je donne le nom d'un fichier jpeg, il lit quelque chose après le 4ème caractère comme '' ... des idées? Merci!Pourquoi ce code lit-il tout '' pour le tout après le 4ème caractère?
'* (ret + fileSize) = « \ 0'' est piétinement sur la mémoire. Et vous voulez probablement 'long len = ftell (fl)'. Et pour allouer dynamiquement la mémoire que vous allez lire. – MSN