est très moche. Caster -1 en pointeur, c'est assez ignoble (au passage, c'est non portable). mmap() renvoie MAP_FAILED en cas d'erreur (suivant POSIX; après si l'implémentation n'est pas conforme, c'est autre chose...).
De plus, exit(0) pour signaler une erreur ! EXIT_FAILURE sert à ça.
Qui plus est, faire un exit() alors qu'on a soi-même défini une fonction Quitter, c'est illogique.
[^] # Re: En passant...
Posté par alf . En réponse au message shm_open() référence indifinie !!!. Évalué à 2.
est très moche. Caster -1 en pointeur, c'est assez ignoble (au passage, c'est non portable). mmap() renvoie MAP_FAILED en cas d'erreur (suivant POSIX; après si l'implémentation n'est pas conforme, c'est autre chose...).
De plus, exit(0) pour signaler une erreur ! EXIT_FAILURE sert à ça.
Qui plus est, faire un exit() alors qu'on a soi-même défini une fonction Quitter, c'est illogique.
En relisant un peu mieux, on a aussi:
- fflush(stdin);, cf. http://c-faq.com/stdio/stdinflush2.html .
- scanf(), cf. http://mapage.noos.fr/emdel/notes.htm#saisie
- int size = sizeof(FICHE);, alors que sizeof renvoie un size_t, et que c'est justement ce que mmap() est censé recevoir...