Informatică Programare
Operatii cu pointeri in C++
Operațiile cu pointeri în C++ implică manipularea adreselor de memorie ale variabilelor pentru acces indirect la date. Un pointer este o variabilă care stochează adresa unei alte variabile, iar operațiile de bază includ dereferențierea, aritmetica pointerilor și compararea.
Operații comune
- Dereferențiere Accesează valoarea de la adresa stocată. Exemplu: int x = 5; int* p = &x; cout << *p; // Afișează 5.
- Aritmetică Adună sau scade valori întregi pentru a naviga prin array-uri. Exemplu: int arr[3] = {1,2,3}; int* ptr = arr; ptr++; // Acum ptr indică către arr[1].
- Comparare Compară adresele pointerilor cu operatori ca == sau <. Exemplu: if (p1 == p2) { /* același loc în memorie */ }.
Exemplu numeric
- 1 Declarare și inițializare int a = 10; int* ptr = &a; // ptr stochează adresa lui a.
- 2 Modificare prin pointer *ptr = 20; // Schimbă valoarea lui a la 20.
- 3 Calcul adrese int arr[2] = {5,7}; int* p = arr; p = p + 1; // p indică acum către arr[1], adică 7.
Verifică întotdeauna dacă pointerii sunt valizi înainte de dereferențiere pentru a evita erori.