Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Valeur renvoyee par main

13 réponses
Avatar
Greydavayar
Bonsoir,

j'ai appris le C avec la notion suivante : la fonction main doit
TOUJOURS retourner 0 sinon, c'est qu'une erreur s'est produite.

Or, je n'ai vu aucun passage dans la norme qui impose que la valeur
retournee soit 0.

Et recemment, j'ai discute avec un eleve d'EPITECH qui lui retournait
systematiquement 1..


Nous avons tous les deux appris avec des methodes differentes, chacune
d'entre elles affirme qu'il FAUT retourner une valeur en particulier
et impose cette valeur.. Pourquoi?

Je suppose que la gestion d'erreurs n'est pas la meme selon les OS et
que ca joue donc sur la valeur de retour, mais existe t'il une loi
"universelle", existe t'il une "bonne pratique", pourquoi les cours
imposent-ils une valeur en particulier??

Merci d'avance

3 réponses

1 2
Avatar
Benoit Izac
Bonjour,

le 09/09/2010 à 18:04, JKB a écrit dans le
message :

Tu vas encore me dire que les specs disent explicitement que
EXIT_FAILURE doit valoir 1. Dans ma jeunesse, la règle était 0 'fin
conforme' et valeur non nulle 'fin anormale' et j'en suis toujours
resté là.



Ce n'est pas ce qu'il a dit et ça n'a pas changé depuis ta jeunesse.

Extrait de
<http://www.opengroup.org/onlinepubs/009695399/basedefs/stdlib.h.html> :
| EXIT_FAILURE
| Unsuccessful termination for exit(); evaluates to a non-zero
| value.
|
| EXIT_SUCCESS
| Successful termination for exit(); evaluates to 0.

--
Benoit Izac
Avatar
Tonton Th
On 09/09/2010 06:04 PM, JKB wrote:

Tu vas encore me dire que les specs disent explicitement que



En tant que trolleur, je peux te dire aussi qu'entre les specs
et la réalité, à propos du retour de main(), c'est un peu du
portnawak.

Le plus conservateur que je connaisse, c'est l'intervalle [0..127]
modulo la compréhension de l'appelant.

--
Et pendant ce temps-là, dans le septembre éternel...
Avatar
JKB
Le Sun, 12 Sep 2010 02:53:56 +0200,
Tonton Th écrivait :
On 09/09/2010 06:04 PM, JKB wrote:

Tu vas encore me dire que les specs disent explicitement que



En tant que trolleur, je peux te dire aussi qu'entre les specs
et la réalité, à propos du retour de main(), c'est un peu du
portnawak.

Le plus conservateur que je connaisse, c'est l'intervalle [0..127]
modulo la compréhension de l'appelant.




begin{troll}
Ça ne peut de toute façon pas être pire que les appels IPCS du SysV qui
ne garantissent pas l'unicité.
end{troll}

JKB

--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
1 2