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 :

word unexpected (expecting ")") Je ne comprend pas


Sujet :

C

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2009
    Messages : 311
    Points : 127
    Points
    127
    Par défaut word unexpected (expecting ")") Je ne comprend pas
    bonjour,

    Voila je vien d'installer ma distribution ubuntu 10.04, je doit faire un petit programme, très simple. Ce programme lit le contenu d'un fichier.

    A la compilation , pas de problème , mais à l'execution, voici ce que j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    1: Syntax error: word unexpected (expecting ")")
    Ou est le probleme ?

    Merci

  2. #2
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    A priori ton programme attend une parenthèse ")" quelque part dans le fichier d'entrée et trouve autre chose à la place.

    Je ne pense pas que ce soit une erreur C au sens strict du terme mais plutot une erreur d'execution de ton application, pour le résoudre tu as deux piste:

    • Chercher l'erreur dans ton fichier d'entrée, il ne suis peut être pas la syntaxe attendue, par exemple il manque une parenthèse ")" quelque part (comme l'indique ton message d'erreur).
    • Si la syntaxe de ton fichier d'entrée est correcte et que tu en est certain, chercher l'endroit ou cette trace est générée dans ton programme et corriger ton code.
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2009
    Messages : 311
    Points : 127
    Points
    127
    Par défaut
    Je viens d essayé tout siplement:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
     
    #include "stdlib.h"
    #include "stdio.h"
     
     
    int main(void){
     
    printf("bjr");
     
    }
    meme erreur.

  4. #4
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Est tu certain que c'est un problème a l'execution du programme, car la se serait un erreur de compilation/edition de lien?

    Un code C correct serait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #include <stdio.h>
     
    int main(void){
     
      printf("bjr");
      return EXIT_SUCCESS;
    }
    Ensuite il faut vérifier que tu utilise bien un compilateur C et non C++

    avec gcc (et pas g++)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gcc monsource.c -o monprogramme
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2009
    Messages : 311
    Points : 127
    Points
    127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    maden@maden-laptop:~/Bureau$ gcc -c test.c -o test
    test.c: In function ‘main’:
    test.c:6: error: ‘EXIT_SUCCESS’ undeclared (first use in this function)
    test.c:6: error: (Each undeclared identifier is reported only once
    test.c:6: error: for each function it appears in.)
    Voici les erreurs obtenu avec votre code.

    Y aurait il un problème avec ma distribution ?

    Merci pour vos reponses

  6. #6
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Citation Envoyé par siro1 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    maden@maden-laptop:~/Bureau$ gcc -c test.c -o test
    test.c: In function ‘main’:
    test.c:6: error: ‘EXIT_SUCCESS’ undeclared (first use in this function)
    test.c:6: error: (Each undeclared identifier is reported only once
    test.c:6: error: for each function it appears in.)
    Voici les erreurs obtenu avec votre code.

    Y aurait il un problème avec ma distribution ?

    Merci pour vos reponses
    non, j'ai oublié stdlib.h dans les include.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #include <stdlib.h>
    http://pwet.fr/man/linux/conventions/posix/stdlib_h

    Note pour les librairies standard les include se font avec des "<>"
    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include <stdio.h>
    #include <stdlib.h>
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2009
    Messages : 311
    Points : 127
    Points
    127
    Par défaut
    Parfait cela fonctionne, pourrais je avoir une explication ?

    Je te remercie encore !


  8. #8
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Avant tout je pense qu'il faudra que tu passe par la case FAQ et tutoriel sur le C, notamment ceux concernant le fonctionnement du compilateur pour commencer.
    http://c.developpez.com/faq/c/
    http://c.developpez.com/sources/
    http://c.developpez.com/cours/

    Le compilateur indiquait qu'il ne trouvait pas la déclaration EXIT_SUCCESS, car il lui manquait l'information lui permettant de la trouver.

    En incluant <stdlib.h> il a été indiqué au compilateur ou trouver EXIT_SUCCESS.

    En effet la documentation de stdlib.h, obtenue avec man stdlib, indique que ce fichier d'en-tête définit EXIT_SUCCESS.
    NAME

    stdlib.h - standard library definitions
    SYNOPSIS

    #include <stdlib.h>
    DESCRIPTION

    Some of the functionality described on this reference page extends the ISO C standard. Applications shall define the appropriate feature test macro (see the System Interfaces volume of IEEE Std 1003.1-2001, Section 2.2, The Compilation Environment) to enable the visibility of these symbols in this header.

    The <stdlib.h> header shall define the following macros:

    • EXIT_FAILURE Unsuccessful termination for exit(); evaluates to a non-zero value.
    • EXIT_SUCCESS Successful termination for exit(); evaluates to 0.
    • NULL Null pointer.
      ...
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 11/06/2009, 11h05
  2. Fonction Quoted printable qui ne fonctionne pas.
    Par leCcsympas dans le forum C
    Réponses: 3
    Dernier message: 13/01/2007, 19h54

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