Ok, la technique fseek/ftell, c'est de mettre le pointeur de flux à la fin du fichier, et de lire son offset.
En fait, je m'attends dans mon fichier à avoir un uint16_t au début. Donc je le lis, et si après ça j'ai trouvé feof(f) != 0, ben je me dis que le fichier était vide
(cross : ah oui, c'est vrai que fseek(f, 0, SEEK_SET) == 0 tout le temps

)
Je comprends les fonctions de la libc, mais je crois qu'on voit que je manque de pratique
Au fait, j'ai pas trouvé dans man, fread déplace le pointeur de flux après ce qu'on a lu ?