Pointeur

Discutez d'informatique ici !
samirou
Membre Relatif
Messages: 166
Enregistré le: 06 Fév 2012, 22:55

pointeur

par samirou » 19 Nov 2014, 15:01

Bonjour, pouvez vous m'aider pour réaliser ce problème

Soient les déclarations suivantes:
int a, b=5, c, d=3;
int * p1, * p2, * p3;
Donnez les valeurs finales des variables a, b, c et d après l'exécution des instructions suivantes:
p2 = &a;
* p2 = d *2;
p2 = &b;
p1 = &c;
* p1 = *p2+3;
p3 = p1;
p1 = p2;



Avatar de l’utilisateur
fatal_error
Membre Légendaire
Messages: 6610
Enregistré le: 22 Nov 2007, 12:00

par fatal_error » 19 Nov 2014, 16:26

salut,

prends un compilateur et testes!!
la vie est une fête :)

Cliffe
Membre Rationnel
Messages: 967
Enregistré le: 12 Juin 2012, 13:25

par Cliffe » 19 Nov 2014, 16:30

fatal_error a écrit:salut,

prends un compilateur et testes!!


ahah :lol3:

Avatar de l’utilisateur
ampholyte
Membre Transcendant
Messages: 3940
Enregistré le: 21 Juil 2012, 07:03

par ampholyte » 20 Nov 2014, 08:37

Bonjour,

Ce qu'il faut retenir des pointeurs :

Code: Tout sélectionner
int a = 5;
int *p = NULL;

p = &a; // On fait pointer p sur l'adresse de a

// (*p = 5) On affiche la valeur contenue à l'adresse où pointe p
printf("%d", *p);

/* On modifie la valeur contenue à l'adresse où pointe p,
or comme p pointe sur l'adresse de a, alors on a modifié la valeur de a */

*p = 8;
printf("%d", a); // (a = 8)



Avec cela tu as normalement tout ce qu'il te faut répondre par toi-même.

kelthuzad
Membre Relatif
Messages: 400
Enregistré le: 23 Avr 2014, 11:08

par kelthuzad » 23 Nov 2014, 16:11

Salut,

Je te conseille de faire un tableau avec en colonne les variables, a, b, c, p1, p2, p3 et à chaque instruction tu remplis une nouvelle ligne du tableau avec le(s) nouvelle(s) valeur(s) qui ont changé, pour les pointeurs plutôt que d'écrire une valeur (qui est en fait l'adresse) tu peux écrire "adresse de ..."

Précision : si dans p2 il y a l'adresse de a (càd &a)
alors *p2 = x aura pour effet de ranger x dans a.

De même si dans p2 il y a &a et que *p2 est utilisé à droite d'une affectation (le =) alors *p2 aura la même valeur que a, autrement dit écrire a serait revenu au même, tant que &a est dans p2 !

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite