Partage
  • Partager sur Facebook
  • Partager sur Twitter

pointeur

Sujet résolu
    29 juillet 2007 à 19:23:28

    salut ,

    je n'ai pas compri deux choses dans un Code C du tuto ,

    void triplePointeur(long *pointeurSurNombre);

    int main(int argc, char *argv[])
    {
        long nombre = 5;

        triplePointeur(&nombre);
        printf("%ld", nombre);   

        return 0;
    }

    void triplePointeur(long *pointeurSurNombre)
    {
        *pointeurSurNombre *= 3;
    }


    1-le pointeur : pointeurSurNombre , ou a il etait crée?
    2-la fonction triplePointeur a pour parametre : long *pointeurSurNombre ,mais quand elle est apelé dans main c'est l adresse de la var Nombre ou &Nombre qui est utilisée.

    merci d avance
    • Partager sur Facebook
    • Partager sur Twitter
      29 juillet 2007 à 19:31:59

      Salut,
      je viens de commencer à apprendre le C hier, je suis au chapitre des " processeur " et j'ai bien compris les "pointeurs" en une seul lecture :D ,
      Les questions que tu pose sont un peu ridicule, sans vouloir t'offoncer !

      - Tu devrais relire le chapitre sur les fonctions
      (- Tu devrais relire le chapitre sur les pointeurs)

      Je vais essayer de t'expliquer, même si je suis nul comme prof xD :(
      Ta question 1 :
      Le pointeur pointeurSurNombre est un parametre de la fonction triplePointeur !
      C'est pas vraiment une variable ou un pointeur.

      Ta question 2 :
      Je sais pas trop comment répondre ,
      Tu peux dire que le pointeur pointeurSurNombre remplace temporairement ( pendant la fonction ) l'adresse de la variable nombre !

      J'espere t'avoir répondu, si j'ai commis des fautes de vocabulaire, veuillez m'excuser, comme je le disais, je viens de commencer le C hier soir !
      • Partager sur Facebook
      • Partager sur Twitter
        29 juillet 2007 à 19:38:05

        Je vais essayer, je dis bien essayer, de t'aider. ^^

        1-le pointeur : pointeurSurNombre , ou a il etait crée?

        Cette variable est un argument de la fonction appelee (ici triplePointeur).
        Dans le cas present, elle represente "nombre", variable qui a ete envoyee en argument a "triplePointeur" et qui va alors "devenir" pointeurSurNombre.

        Pour etre plus clair (enfin je crois :p ), les arguments d'une fonction representent des variables crees auparavant.


        2-la fonction triplePointeur a pour parametre : long *pointeurSurNombre ,mais quand elle est apelé dans main c'est l adresse de la var Nombre ou &Nombre qui est utilisée.

        Lorsque tu envoies une adresse a une fonction (&variable), tu la recuperes en mettant une * devant.



        J'espere avoir pu t'aider. :)
        • Partager sur Facebook
        • Partager sur Twitter
          29 juillet 2007 à 19:56:53

          "les arguments d'une fonction representent des variables crees auparavant" je voualit m'assurer que c'etait le cas ossi pour les Pointeurs.

          la 2eme j'avoue que je me suis un peut precipité :-°

          merci
          • Partager sur Facebook
          • Partager sur Twitter
            29 juillet 2007 à 19:59:09

            oui voilà
            bonne contianuation pour la lecture du tuto :p
            • Partager sur Facebook
            • Partager sur Twitter
              29 juillet 2007 à 20:00:24

              Citation : TheTNT

              je voualit m'assurer que c'etait le cas ossi pour les Pointeurs.

              C'est aussi le cas pour toutes les variables de tous les types.
              • Partager sur Facebook
              • Partager sur Twitter

              pointeur

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown