Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de pointeurs

    20 octobre 2006 à 16:41:11

    Bonjour tout le monde,
    ma question peut paraître bête :euh: mais que doit-on écrire lorsque l'on éctrit un pointeur qui pointe vers un tableau de char appelé s ?

    char* s

    ou

    char *s

    Citation : M@ateo21

    Pour créer une variable de type pointeur, on doit rajouter le symbole * devant le nom de la variable.

    long *monPointeur;



    Notez qu'on peut aussi écrire...

    long* pointeurSurAge;


    Cela revient exactement au même.
    Cependant, la première méthode est à préférer. En effet, si vous voulez déclarer plusieurs pointeurs sur la même ligne, vous serez obligés de mettre l'étoile devant le nom (première méthode) :

    long *pointeur1, *pointeur2, *pointeur3;



    Je suis un peu persu car ce que dit M@teo21 est contradictoire...
    Merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      20 octobre 2006 à 16:55:31

      Citation : Tonio1409

      Je suis un peu persu car ce que dit M@teo21 est contradictoire...


      Comment ca contradictoire ?!
      Si tu veut crée un poiteur qui pointe vers un chaine de caractére tu fait

      char *chaine;  /* ou bien:   char* chaine; */
      chaine = "hahaha";

      Si tu veut crée un tableau de poiteur où chaque pointeur pointe sure un chaine constante:

      char *tab[5];

      // et tu initialise
      tab[0] = "Bonjous";
      tab[1] = "Salut";
      // etc etc ...
      • Partager sur Facebook
      • Partager sur Twitter
        20 octobre 2006 à 16:59:16

        oui, mais est-ce que :
        char *chaine;
        chaine = "hahaha";

        est pareil que :
        char* chaine;
        chaine = "hahaha";

        • Partager sur Facebook
        • Partager sur Twitter
          20 octobre 2006 à 17:06:34

          Citation : Tonio1409

          oui, mais est-ce que :

          char *chaine;
          chaine = "hahaha";


          est pareil que :

          char* chaine;
          chaine = "hahaha";




          Oui, et alors , où es le probléme ?

          EDIT: tu la bien dit dans ton 1er poste non !:


          • Partager sur Facebook
          • Partager sur Twitter
            20 octobre 2006 à 17:29:43

            oui c'est exactement pareil
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              20 octobre 2006 à 18:52:10

              Mat explique simplement que la deuxième méthode est préférable si tu déclares plusieurs pointeurs d'un coup, mais les deux sont parfaitement corrects.
              • Partager sur Facebook
              • Partager sur Twitter
                20 octobre 2006 à 19:07:15

                Pour etre clair

                char* txt est TOTALEMENT egal à char *txt.
                • Partager sur Facebook
                • Partager sur Twitter
                  20 octobre 2006 à 19:13:57

                  Citation : A06

                  Pour etre clair

                  char* txt est TOTALEMENT egal à char *txt.


                  char*txt;

                  char * txt;

                  char
                  *
                  txt
                  ;


                  c\
                  h\
                  a\
                  r
                  *
                  t\
                  x\
                  t
                  ;
                  etc.

                  Tu choisis le plus lisible...

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Music only !
                    20 octobre 2006 à 19:44:36

                    Citation : -ed-

                    char
                    *
                    txt
                    ;



                    c\
                    h\
                    a\
                    r
                    *
                    t\
                    x\
                    t
                    ;

                    etc.
                    Tu choisis le plus lisible...


                    lol \o/



                    • Partager sur Facebook
                    • Partager sur Twitter
                      20 octobre 2006 à 20:18:55

                      Citation : Bad_Day


                      lol \o/


                      et
                      l\
                      o\
                      l
                      • Partager sur Facebook
                      • Partager sur Twitter
                        20 octobre 2006 à 20:39:53

                        La question revient souvent. En C, on fait plutôt char *c car c'est un pointeur sur un char, alors qu'en C++ char* c est assez commun, car on voit ça comme un objet de type pointeur de char. Après, moi je fais du C++ et j'utilise la première convention (pas depuis longtemps, avant je faisais char * c).
                        En bref tu fais comme tu veux, mais je ne crois pas me tromper en avançant que coller l'étoile au nom de la variable est plus répandu.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          23 octobre 2006 à 16:40:18

                          Merci pour cet éclairage les amis. Bonne soirée.
                          • Partager sur Facebook
                          • Partager sur Twitter

                          Problème de pointeurs

                          × 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