Compartilhar via


Adição de tipos de ponteiro

Se um dos operandos de uma operação de adição é um ponteiro para uma matriz de objetos, o outro deve ser do tipo integral.O resultado é um ponteiro que é do mesmo tipo que o ponteiro original e que aponta para outro elemento da matriz.O fragmento de código a seguir ilustra esse conceito:

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;
}

Embora o valor integral 1 é adicionado ao pIntArray, isso não significa "adicionar 1 para o endereço"; em vez disso, significa "ajustar o ponteiro para o próximo objeto na matriz" que vem a ser de 2 bytes (ou sizeof( int )) ausente.

ObservaçãoObservação

Código do formulário pIntArray = pIntArray + 1 é raramente encontrado em programas em C++. para executar um incremento, esses formulários são preferidos: pIntArray++ ou pIntArray += 1.

Consulte também

Referência

Expressões com operadores binários