Pointeurs

Résolu
krc Messages postés 5 Statut Membre -  
 krc -
bonjour,

voici la déclaration suivante:

int c=12;
int * ptr;
ptr=&c;

je sais que c est un entier qui vaut ici 12.
le symbole & est l'opérateur d'adressage
ptr vaut l'adressage de c.

s'il vous plait comment pourrais-je écrire les 3 lignes de déclarartion des variables d'unbe manière plus compacte?

et modifier le contenu de c à 5 en passant par le pointeur ptr.

merci
Configuration: window millénnium

3 réponses

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 940
     
    int c=2;
    int *ptr=&c;
    

    Sachant que tu ne peux pas faire plus court si tu as besoin des variables c et ptr...

    Bonne chance
    0
    1. krc
       
      bonsoir mamiemando,

      merci pour votre résolution mais je n'ai pas compris votre réponse

      pouvez-vous me l'expliquez s'il vous plait.
      0
  2. carkiasis Messages postés 67 Date d'inscription   Statut Membre 28
     
    Pour modifier le contenu du pointeur, rien de plus simple :
     *ptr=5
    0
  3. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 940
     
    Mais au préalable tu dois avoir déclaré ptr, donc ça fait quand même deux lignes :
    int *ptr;
    *ptr=5;

    Petits rappels sur les poiteurs :
    int *p;
    int v,w;
    p=&v; // p prend pour valeur l'adresse de v
    *p=5; //la zone pointée par p (ie la variable v) est affectée à 5
    w=*p; //w <- v
    

    Bonne chance
    0
    1. krc
       
      bonjour,

      merci mamiemando, ta réponse m'as éclaircie.
      0