Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1575 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Erreur de compilation : expected expression before ‘%’ token

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Erreur de compilation : expected expression before ‘%’ token

n°2179436
chatonmeow
CTRL+ALT+DEL is not for noobs.
Posté le 08-03-2013 à 20:54:49  profilanswer
 

Hello.
J'ai un probléme de compilation que j'arrive pas à résoudre.

Code :
  1. mikael@Zeus:~/projects/one command$ gcc osh.c
  2. osh.c: In function ‘main’:
  3. osh.c:5:9: attention : initialization makes integer from pointer without a cast [enabled by default]
  4. osh.c:7:5: erreur: expected expression before ‘%’ token
  5. osh.c:9:10: erreur: expected expression before ‘%’ token
  6. mikael@Zeus:~/projects/one command$ gcc osh.c


Voici mon code source :

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. main()
  4. {
  5. int i = "0";
  6. scanf("%d", &i);
  7. if %d = "ping"
  8.     printf("ping not available on this program" );
  9. else if %d = "v"
  10.     printf("osh 1.1" );
  11. else
  12.     printf("Command not found. Exiting program." );
  13. return 0;
  14. }


Pourriez vous me dire d'ou vient le probléme ?
Merci


---------------
Windows 8: Designed to fail
mood
Publicité
Posté le 08-03-2013 à 20:54:49  profilanswer
 

n°2179440
tpierron
Posté le 08-03-2013 à 21:23:38  profilanswer
 

Heu, es-tu sûr que tu voulais poster ton message dans la catégorie [C] ? parce que ton "code" ne veut pas dire grand chose dans ce langage: la syntaxe de ton "if" est complètement fausse et l'initialisation de la variable "i", bien que permissible, n'est sans doute pas ce que tu voulais faire. D'où question: qu'est-ce que ce programme est sensé faire ?
 

chatonmeow a écrit :


Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. main()
  4. {
  5. int i = "0";
  6. scanf("%d", &i);
  7. if %d = "ping"
  8.    printf("ping not available on this program" );
  9. else if %d = "v"
  10.    printf("osh 1.1" );
  11. else
  12.    printf("Command not found. Exiting program." );
  13. return 0;
  14. }




Message édité par tpierron le 08-03-2013 à 21:27:32
n°2179442
chatonmeow
CTRL+ALT+DEL is not for noobs.
Posté le 08-03-2013 à 21:29:53  profilanswer
 

je pensais que les if étaient juste, car je me suis justement basé sur une documentation C
je compte faire un programme qui répond selon le texte entré ;)


---------------
Windows 8: Designed to fail
n°2179455
tpierron
Posté le 08-03-2013 à 22:30:59  profilanswer
 

chatonmeow a écrit :

je pensais que les if étaient juste, car je me suis justement basé sur une documentation C
je compte faire un programme qui répond selon le texte entré ;)


 
Je ne sais pas quelle documentation tu as utilisé, mais je te conseille de la mettre de coté... J'ai encore un peu de mal à voir ce que tu voulais, mais à priori, je dirais plutôt un truc du genre:
 

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. int main()
  5. {
  6.     char msg[256];
  7.     fgets(msg, sizeof msg, stdin);
  8.     if (strncmp(msg, "ping", 4) == 0)
  9.         printf("ping not available on this program" );
  10.     else if (strncmp(msg, "v", 1) == 0)
  11.         printf("osh 1.1" );
  12.     else
  13.         printf("Command not found. Exiting program." );
  14.     return 0;
  15. }


 
Le code n'est pas très robuste, cela dit. Une meilleure façon de faire serait d'extraire les mots de la saisie de l'utilisateur et de faire une comparaison à partir de là, mais ça va être déjà de belle tartine de code. D'où l'intérêt peut-être d'aller voir des langages d'un peu plus haut niveau...

n°2179457
chatonmeow
CTRL+ALT+DEL is not for noobs.
Posté le 08-03-2013 à 23:28:20  profilanswer
 

Je te remercie ! Ca fonctionne. La documentation devait être assez vieille ou fausse alors ;)


---------------
Windows 8: Designed to fail

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Erreur de compilation : expected expression before ‘%’ token

 

Sujets relatifs
Problème avec htaccess et une expression régulière..Erreur impossible à gérer
Corriger erreur php: modification de base donnéesErreur sur un script PHP affichant plusieurs
Erreur d'execution '9' : L'indice n'appartient pas à la sélectionPosition d'une liste avec counter et :before
[resolu] problème compilation programmes C sous Dev-C++Probleme ERREUR PDO
erreur sous MVS , et SDL_ttferreur de synthase
Plus de sujets relatifs à : Erreur de compilation : expected expression before ‘%’ token


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR