Pointeurs

Résolu
krc Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
 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

3 réponses

mamiemando Messages postés 33758 Date d'inscription   Statut Modérateur Dernière intervention   7 877
 
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
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
carkiasis Messages postés 67 Date d'inscription   Statut Membre Dernière intervention   28
 
Pour modifier le contenu du pointeur, rien de plus simple :
 *ptr=5
0
mamiemando Messages postés 33758 Date d'inscription   Statut Modérateur Dernière intervention   7 877
 
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
krc
 
bonjour,

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