Condividi tramite


Aggiunta di tipi puntatore

Se uno degli operandi in un'operazione di addizione è un puntatore a una matrice di oggetti, l'altra deve essere di tipo integrale.Il risultato è un puntatore dello stesso tipo del puntatore originale e che indica un altro elemento della matrice.Nel frammento di codice viene illustrato questo concetto:

short IntArray[10]; // Objects of type short occupy 2 bytes
short *pIntArray = IntArray;

for( int i = 0; i < 10; ++i )
{
    *pIntArray = i;
    cout << *pIntArray << "\n";
    pIntArray = pIntArray + 1;
}

Sebbene il valore integrale 1 sia stato aggiunto a pIntArray, non significa “aggiungere 1 all'indirizzo„; anziché significa “regolare il puntatore per indicare l'oggetto successivo nella matrice„ visualizzato come 2 byte (o sizeof( int )) via.

[!NOTA]

Codice del form pIntArray = pIntArray + 1 viene trovato raramente in programmi C++, per eseguire un incremento, questi form sono preferibili: pIntArray++ o pIntArray += 1.

Vedere anche

Riferimenti

Espressioni con gli operatori binari