IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

return ();exit() ;


Sujet :

C

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 134
    Par défaut return ();exit() ;
    Bonjour,

    Dites ,quand je veux quitter une application ,que je fasse :

    ou

    c'est pareille ?

    Merci

    Zazeglu

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 135
    Par défaut
    je crois que return 0 est equivalent à exit 1 (à verifier)

  3. #3
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Par défaut
    Return renvoie une valeur a la fonction appelante, donc ne quitte le programme que si lorsqu'elle est dans le main. exit quitte le programme quelque soit la fonction dans laquelle a lieu l'appel

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 134
    Par défaut
    Return renvoie une valeur a la fonction appelante, donc ne quitte le programme que si lorsqu'elle est dans le main. exit quitte le programme quelque soit la fonction dans laquelle a lieu l'appel
    oui je le savait ,mais je veut dire que je quitte le programme (dans le main donc)avec return ou exit c'est pareil ?

    crois que return 0 est equivalent à exit 1 (à verifier)
    Ce n'est pas ce qui est dit dans mon livre en tout cas ,tu es sûr ?

    Merci

    Zazeglu

  5. #5
    Expert éminent

    Avatar de Anomaly
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 380
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Willand
    je crois que return 0 est equivalent à exit 1 (à verifier)

    encore heureux que non, ça serait pas logique. C'est gl qui a raison.

    Si, dans le main, tu fais exit(0) ou return 0; c'est exactement pareil oui.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 135
    Par défaut
    J'ai compilé un fichier pour verifier... et ca revient au meme de mettre :

    return 0 ou exit(1)
    (pour le exit faut mettre les parenthèses)

  7. #7
    Expert éminent

    Avatar de Anomaly
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 380
    Billets dans le blog
    1
    Par défaut
    Et si tu avais essayé exit(0) ou return 1 ou exit(124) ou return 17 tu aurais vu que cela était aussi pareil

    Cela détermine la valeur renvoyée par ton programme à l'appelant s'il désire lire cette valeur.

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 135
    Par défaut
    Citation Envoyé par Anomaly
    Cela détermine la valeur renvoyée par ton programme à l'appelant s'il désire lire cette valeur.
    je comprend pas trop ce que ca veut dire...

  9. #9
    Expert éminent

    Avatar de Anomaly
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 380
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Willand
    Citation Envoyé par Anomaly
    Cela détermine la valeur renvoyée par ton programme à l'appelant s'il désire lire cette valeur.
    je comprend pas trop ce que ca veut dire...
    La valeur que tu donnes à ton "return" (dans le main) ou à "exit" est par convention 0 si tout est OK, une autre valeur sinon. Mais en fait le système ne s'en sert pas. Quand tu lances un programme, rien ne va te dire en tant normal si son "main" a renvoyé 0 ou autre chose. Mais tu peux lire cette valeur.

    Sous Win95+, si tu lances "command /z", tu auras une ligne de commande qui te dira la valeur renvoyée par chaque commande (externe).
    Sous Linux (bash), tu peux tester $?, cette variable contient la valeur retournée par le dernier programme exécuté.
    En C, tu peux utiliser la fonction "wait" après avoir lancé un processus pour lire sa valeur de retour.

  10. #10
    Membre éprouvé Avatar de alexrtz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2003
    Messages
    639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2003
    Messages : 639
    Par défaut
    Salut,

    Essaye d'exécuter ton prog (avec 1 puis 0) avec un débugueur (dsl pour l'orthographe) et tu verras la différence

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 134
    Par défaut
    Bon ben en ce qui me concerne ,mon problème est résolut !

    Merci bien Anomaly (et les autres aussi ...)

    Zazeglu

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 135
    Par défaut
    Ah ok

    Merci pour l'explication Anormaly

  13. #13
    Nouveau candidat au Club
    Inscrit en
    Août 2003
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 2
    Par défaut
    je pense que ca marche aussi avec exit(-1);
    est j'ai trouve des programmes qui fonctionne avec ce parametre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. collect2: id returned exit status
    Par Anto__ dans le forum Débuter
    Réponses: 4
    Dernier message: 02/07/2011, 11h30
  2. Réponses: 49
    Dernier message: 30/05/2007, 00h18
  3. compilation en C: ld returned 1 exit status
    Par maldini dans le forum C
    Réponses: 3
    Dernier message: 26/07/2006, 15h20
  4. Significations des différents exit() et return()
    Par olivier857 dans le forum Réseau
    Réponses: 19
    Dernier message: 10/07/2006, 12h24
  5. 'exit' undefined; assuming extern returning int
    Par petdelascar dans le forum MFC
    Réponses: 2
    Dernier message: 18/10/2005, 12h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo