TP1 (Copie) PDF
TP1 (Copie) PDF
TP1 (Copie) PDF
Objectif
Le but de ce TP est d’assimiler les notions suivantes :
- Les spécificités de C++
- Notions du pointeur et référence
- Passage par valeur, par référence et par adresse
- L’allocation dynamique
- Les bibliothèques <string> et vector>
Exercice 1
Question 1 : Donnez les valeurs de A,B,C, P1 et P2 :
int square(int n) {
cout << "In square(): " << &n << endl; // 0x22ff00
n *= n;
return n;
}
void square(int * pNumber) {
cout << "In square(): " << pNumber << endl; // 0x22ff1c
*pNumber *= *pNumber;
}
void square(int & rNumber) { )
cout << "In square(): " << &rNumber << endl; // 0x22ff1c
rNumber *= rNumber
}
1
TP N°1 : programmation orientée objet C++ 2021
Enseignante : Amina JARRAYA
Implémentez la méthode main, où vous appelez la méthode square. Appelez la méthode cout
pour afficher la valeur du l’entier passé en paramètre. Quand est-ce que la valeur du nombre
passé en paramètre change ?
Exercice 2
Trouvez les erreurs dans les suites d'instructions suivantes et proposez les corrections :
a) b) c) d) e)
int * p; int x=17; double * q; int x; char mot[10];
int x=34; int * p=x; int x=17; int * p; char car='A';
*p=x; *p=17 ; int * p=&x; &x=p; char * pc=&car;
q=p ; mot=pc;
Exercice 3
Ecrire plus simplement en C++, les instructions suivantes, en utilisant les opérateurs new et
delete :
int* adi ;
double * add ;
……
adi = (int*) malloc (sizeof (int)) ;
add = (double*) malloc (sizeof (double) * 100);
Exercice 4
Exercice 5
Ecrire un programme qui déclare un tableau dynamique de chaine de caractères et qui, après
avoir demandé le nombre de chaines à stocker, en effectue la saisie.
Vous allez implémentez ces deux cas :
Le tableau est crée avec un new. Les chaines de caractères sont de type char*.
Utiliser la classe vector et la classe string