Seja a seguinte sequência de instruções em um programa C++:
Qual afirmativa é falsa?
- armazena o endereço de i
- é igual a
- ao se executar a variável passará a ter o valor
- ao se alterar o valor de , o valor da expressão será modificado
- é igual a
Passo 1
Bora lá, pessoal.
Questões de marcar são mais fáceis quando a gente analisa o código antes de ir para as alternativas.
Na linha 01 é criado um ponteiro chamado
Na linha 02 é criada uma variável chamada com valor inicial
E na linha 03 fazemos apontar para , ou seja, a gente armazena o endereço da variável no ponteiro .
Passo 2
Agora vamos analisar as alternativas.
- armazena o endereço de i
- é igual a
- ao se executar a variável passará a ter o valor
- ao se alterar o valor de , o valor da expressão será modificado
- é igual a
Verdadeiro. Como vimos, na linha 03 o código faz o ponteiro armazenar o valor da variável
Verdadeiro.
Quando a gente usa o operador de desreferenciação a gente acessa o valor armazenado na variável apontada pelo ponteiro.
O ponteiro aponta para , e o valor de é . Logo, o valor de é
Verdadeiro.
Quando a gente usa o operador de desreferenciação a gente acessa o valor armazenado na variável apontada pelo ponteiro.
Então, alterar o valor utilizando a expressão é a mesma coisa que usar a expressão
Verdadeiro.
A expressão acessa o valor contido na variável . Então se o valor de for alterado, então o valor de também será alterado.
Falso.
é um ponteiro que armazena o endereço de
Resposta
O item e) é falso.