Probleme en C
Fermé
Rem's
Messages postés
64
Date d'inscription
vendredi 12 septembre 2003
Statut
Membre
Dernière intervention
8 mai 2007
-
17 oct. 2003 à 19:35
Rem's Messages postés 64 Date d'inscription vendredi 12 septembre 2003 Statut Membre Dernière intervention 8 mai 2007 - 17 oct. 2003 à 20:58
Rem's Messages postés 64 Date d'inscription vendredi 12 septembre 2003 Statut Membre Dernière intervention 8 mai 2007 - 17 oct. 2003 à 20:58
4 réponses
Bon apres lecture je propose:
int main(int argc, char *argv[])
{
...
}
Où argv est un tableau de pointeur et le 1er élément est argv[0] qui est normalement le nom de l'application. Le 1er paramètre sera donc argv[1].
/application -parametre1 -parametre2
argv[0] = "application"
argv[1] = "-parametre1"
argv[2] = "-parametre2"
En ce qui concerne "if((h=gethostbyname(var))==NULL)" je suppose que getmachin retourne un pointeur donc obligatoirement h doit etre un pointeur et si tu veux affecter un entier, la valeur pointée par h est *h. Donc tu doit faire un truc du genre:
int *h; // pointeur sur un entier signé
int val; // la valeur à affecter
h = &val; // le pointeur contient l'adresse de la variable h
*h = 5; // ici j'affecte val par h
Tout est OK?
int main(int argc, char *argv[])
{
...
}
Où argv est un tableau de pointeur et le 1er élément est argv[0] qui est normalement le nom de l'application. Le 1er paramètre sera donc argv[1].
/application -parametre1 -parametre2
argv[0] = "application"
argv[1] = "-parametre1"
argv[2] = "-parametre2"
En ce qui concerne "if((h=gethostbyname(var))==NULL)" je suppose que getmachin retourne un pointeur donc obligatoirement h doit etre un pointeur et si tu veux affecter un entier, la valeur pointée par h est *h. Donc tu doit faire un truc du genre:
int *h; // pointeur sur un entier signé
int val; // la valeur à affecter
h = &val; // le pointeur contient l'adresse de la variable h
*h = 5; // ici j'affecte val par h
Tout est OK?
Rem's
Messages postés
64
Date d'inscription
vendredi 12 septembre 2003
Statut
Membre
Dernière intervention
8 mai 2007
27
17 oct. 2003 à 20:58
17 oct. 2003 à 20:58
Merci beaucoup pour ta réponse rapide, le probleme semble être réglé et il me reste plus qu'à tester pour voir si ça marche :)
L'erreur venait du fait que je ne prenais pas en compte le bon type de variable pour ma fonction. Au debut ma fonction ressemblait à: void test( char var){....., alors que pour bien aller il fallait que ce soit void test(char var[16]) etant donné que c'est une ip qui passe dans les parametre...
Dans tous les cas, encore merci pour ton aide, a+
L'erreur venait du fait que je ne prenais pas en compte le bon type de variable pour ma fonction. Au debut ma fonction ressemblait à: void test( char var){....., alors que pour bien aller il fallait que ce soit void test(char var[16]) etant donné que c'est une ip qui passe dans les parametre...
Dans tous les cas, encore merci pour ton aide, a+