1)Qual o resultado impresso após a execução do trecho de programa a seguir?
int i, j, *p;
i = 4;
j = 7;
p = &j;
*p = 9;
cout << i << ' ' << j << ' ' << *p;

Passo 1

O enunciado mostra um trecho de código em C ++ que declara três variáveis: os inteiros i e j e o ponteiro para inteiro p. Em seguida, faz as atribuições i = 4, j = 7, p = \&j, *p = 9,
e por fim imprime os valores de i, j e *p. Nosso objetivo é entender como a atribuição via ponteiro afeta essas variáveis e descobrir o que será exibido.

Passo 2

Quando executamos p = \&j
o ponteiro p passa a “apontar” para a variável j. Logo em seguida, *p = 9
significa “armazene o valor 9 na posição de memória para a qual p aponta”, ou seja, em j. A variável i não é alterada, pois nunca foi modificada após receber 4.

Resposta

499

Exercícios relacionados