• Aucun résultat trouvé

TP 4 NOM1 : ___________ NOM2 : ___________

N/A
N/A
Protected

Academic year: 2022

Partager "TP 4 NOM1 : ___________ NOM2 : ___________"

Copied!
1
0
0

Texte intégral

(1)

TP 4 NOM1 : ___________ NOM2 : ___________

Dans chaque colonne, écrivez le contenu des variables et des expressions APRES

l’exécution de la ligne correspondante. Ecrivez « adr de a » pour désigner l’adresse de la variable a plutôt que d’écrire une adresse mémoire absolue : 0x00ff14. Ecrivez

« N » : lorsque le contenu d’une variable est non initialisé ou ne correspond à rien. Les fonctions sont données dans le projet associé, téléchargez-le. Essayez de remplir le tableau en utilisant vos connaissances et aidez-vous ensuite du debugger pour corriger vos résultats (Menu > Déboguer >

Fenêtre > Espion).

La fiche est à remplir et à rendre à l’enseignant void fnt1()

{

int a = 4;

Ref(a);

Val(a);

Adr(&a);

}

void fnt2() {

int a = 1;

int * b = &a;

Val(*b);

Ref(*b);

Adr(b);

}

void fnt3() {

int * b;

Val(*b);

}

void fnt4() {

int * b = new int;

b[0]=8;

Val(*b);

Adr(b);

Incr(b);

delete b;

}

void fnt5() {

int a[2] = {3, 4};

int * b = & a[0];

int * c = & a[1];

int *d = a;

int ** e = &d;

*e = c;

(*e)++;

}

void fnt6() {

int k = 3;

int * a = new int[k];

a[0] = 1;

a[1] = 2;

a[2] = 5;

int * b = & a[0];

int * c = & a[1];

d = c;

int ** e = &b;

*e = c;

(*e)++;

delete [] a;

}

fnt1() int a Ref(a) Val(a) Adr(&a)

a

Fnt2() int a = int * b = Val(*b) Ref(*b) Adr(b);

a

b /////////

*b /////////

fnt3() int * b Val(*b);

*b Explication:

fnt4() int * b b[0] = 8 Val(*b) Adr(b) Incr(b) b

*b

-fnt5() int a[2] int * b = int * c = int *d int ** e *e (*e)++

a[0]

a[1]

*b /////////

b /////////

*c ///////// /////////

c ///////// /////////

*d ///////// ///////// /////////

d ///////// ///////// /////////

e //////// ///////// ///////// ////////

*e //////// ///////// ///////// ////////

**e ///////// //////// ///////// ////////

fnt6() int a[1] = int * b = int * c = b = c int ** e *e (*e)++

a[0]

a[1]

*b /////////

b /////////

*c ///////// /////////

c ///////// /////////

*d ///////// ///////// /////////

d ///////// ///////// /////////

e //////// ///////// ///////// ////////

*e //////// ///////// ///////// ////////

**e ///////// ///////// ///////// ////////

ESIEE 2011

Lilian BUZER

Dept. Informatique

Références

Documents relatifs

[r]

Line and keyboard command functions include carriage return, line feed, incremental cursor positioning, line/local, half/full intensity field, blink field, underline

Pour cela, on utilise le fait que la tangente passe par le point de la courbe d’abscisse a, dont les coordonnées sont (a; f(a))... Le point P appartient à cette tangente donc

[r]

La d´ erivabilit´ e sur R de l’argument sinus hyperbolique implique alors par produit puis composition celle de

[r]

[r]

[r]