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 :

utilisation des fonctions avec comme param�tre des variable de type CHAR


Sujet :

C

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �prouv�
    Homme Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    D�cembre 2006
    Messages
    1 080
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux

    Informations forums :
    Inscription : D�cembre 2006
    Messages : 1 080
    Par d�faut utilisation des fonctions avec comme param�tre des variable de type CHAR
    Bonjour,

    J'utilise plusieurs fonctions avec des chaines de caract�res :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    #include <stdio.h>
    #define TAILLE_IP 1000
     
    void parseur()
    {
        FILE* fichier = NULL;
        char ip[TAILLE_IP] = "";
     
        fichier = fopen("AKF_computer.txt", "r");
     
        if (fichier != NULL)
        {
            while (fgets(ip, TAILLE_IP, fichier) != NULL) // On lit le fichier tant qu'on ne reçoit pas d'erreur (NULL)
            {
            // On Suprime les caractères de saut de ligne  
            if (ip[strlen(ip) - 1] == '\n')
            {
                ip[strlen(ip) - 1] = '\0'; 
            }
                printf("%s : ",ip);
                reponse(ip);   
            }
            fclose(fichier);
        }
    }
    Ici je parse un fichier texte dans le but de r�cup�rer les adresses IP qu'il contient. Ensuite, j'appelle une autre fonction qui re�oit en param�tre ma chaine de caract�res (adresse IP) :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #include <stdio.h>
    void reponse(ip)
    {
        int reponse = test(ip);
     
        printf("%ld",reponse); 
     
        if(reponse==1)
        {
            printf("Installation possible\n");                  
        }
        else if(reponse==2)
        {
            printf("Partage c$ inaccessibles\n");              
        }
        else if(reponse==3)
        {
            printf("Pas de reponse au Ping\n");           
        }
    }
    La question que je me pose, c'est si je dois d�clarer le type de variable que re�ois en param�tre ma 2eme fonction ?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    void reponse(ip)
    {
    ...
    }
    Car pour une variable de type entier, dans les cours que j'ai pu lire, il faut le faire, mais dans mon cas, si je d�clare le type (char) la compilation plante.

    Je pose cette question par apr�s dans mon programme, j'ai besoin d'appeler une fonction qui � besoin de deux param�tres de deux types diff�rents (char et int)

    merci d'avance de vos lumi�res.

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Ben oui, il faut d�clarer, mais ce ne sera pas de type char.
    Ce sera sans doute de type pointeur sur char (char *) ou pointeur sur char constants (const char *).

    D'ailleurs, si tu regardes le prototype d'autres fonctions comme fopen(), tu verras qu'elles prennent en param�tre un const char *.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre �prouv�
    Homme Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    D�cembre 2006
    Messages
    1 080
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux

    Informations forums :
    Inscription : D�cembre 2006
    Messages : 1 080
    Par d�faut
    ok, dans mon cas, ca sera :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    void reponse(char *ip)
    {
    ...
    }
    ?

  4. #4
    Membre �prouv�
    Homme Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    D�cembre 2006
    Messages
    1 080
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux

    Informations forums :
    Inscription : D�cembre 2006
    Messages : 1 080
    Par d�faut
    effectivement, cela fonctionne

    appel de la fonction avec en param�tre mon adresse ip
    la fonction
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    void reponse(char *ip)
    {
    ...
    }

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Ben non.
    Ton avant-dernier post �tait potable, le dernier est revenu en arri�re et est compl�tement faux.

    PS: Es-tu s�r que tu as vraiment besoin d'un pointeur non-const ?
    (oui, c'est dans ce sens-l� qu'on pose la question, pas l'inverse)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre �prouv�
    Homme Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    D�cembre 2006
    Messages
    1 080
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux

    Informations forums :
    Inscription : D�cembre 2006
    Messages : 1 080
    Par d�faut
    j'ai un autre soucie :

    appel d'une fonction
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    char ip[] = "129.0.0.1";
    reponse(&ip);
    fonction "reponse" (si je fais un printf de "ip" dans cette fonction aucun probl�me
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    #include <stdio.h>
    void reponse(char *ip)
    {
        test(&ip);
    }
    fonction test
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    int test(char *ip)
    {
        printf("%s\n",ip);
    }
    lorsque j'affiche, j'ai P√" qui s'affiche...

  7. #7
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    OK, l'heure est grave: Ton compilateur est mal configur�.
    Quel compilo utilises-tu ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [AC-2013] Requete avec comme parametre des variables.
    Par NenciariniL dans le forum Requ�tes et SQL.
    R�ponses: 4
    Dernier message: 24/05/2015, 11h28
  2. [Toutes versions] Croiser des donn�es avec comme synth�se des donn�es alphanum�riques
    Par Philippe Tulliez dans le forum Contribuez
    R�ponses: 0
    Dernier message: 19/02/2014, 08h48
  3. surcharge de fonction avec comme param�tre Object
    Par poporiding dans le forum C++
    R�ponses: 8
    Dernier message: 14/07/2006, 03h47
  4. [VB.NET][Excel] utiliser des fonction Excel comme xlToRight
    Par Alexj51 dans le forum Macros et VBA Excel
    R�ponses: 5
    Dernier message: 01/03/2006, 12h10
  5. Retrouver les valeurs des param�tres des fonctions d'une DLL
    Par Bernard Martineau dans le forum Langage
    R�ponses: 6
    Dernier message: 08/11/2005, 10h42

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