semifer
Messages postés40Date d'inscriptionlundi 31 mars 2003StatutMembreDernière intervention26 septembre 2007
-
31 août 2005 à 07:44
semifer
Messages postés40Date d'inscriptionlundi 31 mars 2003StatutMembreDernière intervention26 septembre 2007
-
31 août 2005 à 10:51
Voilà, je débute en C, j'ai quelques connaissances dans d'autres langages (surtout php et scripts bash).
Je tourne sous plateforme Linux Debian 3.1 et j'utilise Kdevelop3 en IDE.
Voilà, j'ai un code très simple (pour l'instant) et j'ai une erreur de
segmentation si j'execute le programme sans arguments. Sinon le reste
fonctionne. C'est très basique et tout de suite le code ne sert à rien
mais j'essaye de m'habituer au langage en faisant divers tests pour
saisir les différences de langage. Voici la portion de code je ne
comprends pas. Je voudrais seuleument verifier si il existe au moins un
paramètre. J'ai essayé des tentatives en vain avec une ligne du genre:
if (argc = 0) { mon instruction } else {bla bla bla}...
Le code:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "aw_var.h"
int main(int argc,char *argv[])
{
if (strcmp(argv[1],Param_START) == 0)
{
printf ("%s. \n", Param_START);
}
if (strcmp(argv[1],Param_STOP) ==0)
{
printf ("%s. \n", Param_STOP);
}
exit(0);
}
C'est vraiment stupide comme code mais le but est simplement de comprendre...
Que dois je mettre pour qu'il me sorte un message si il n'y a aucun paramètre?
A voir également:
Une erreur de segmentation que je ne comprends pas...
semifer
Messages postés40Date d'inscriptionlundi 31 mars 2003StatutMembreDernière intervention26 septembre 2007 31 août 2005 à 10:47
Param_START et Param_STOP sont définis dans aw_var.h de cette façon:
#define Param_START "start"
#define Param_STOP "stop"
Mais ces paramètres fonctionnent lorsque je les passe. Si je fais:
./essai start ou ./essai stop , il se passe ce qui doit se passer, ca me retourne la valeur de Param_STOP ou _START. Mais si je tape seuleument ./essai ,
ca me retourne "erreur de segmentation". Donc je pense que ca se situe
ailleurs? En fait j'en sais rien, je débute dans ce langage, et je ne
peux pas en dire plus, malheureuseument...
semifer
Messages postés40Date d'inscriptionlundi 31 mars 2003StatutMembreDernière intervention26 septembre 2007 31 août 2005 à 10:51
Merci luhtor! Je suis
un peu stupide des fois! La seule chose que je n'ai pas testée, tu me
la met dans la face lol... Encore merci, c'est nickel, ca fonctionne!
C'était pourtant si évident...