Considere os seguintes ambientes:
Escolha a alternativa incorreta:
a) O uso do ponteiro para a alocação dinâmica é obrigatório, pois definirá um endereço inicial para memória alocada dinamicamente.
b) Ambos os ambientes geram a mesma impressão.
c) A alternativa anterior seria incorreta se, no Ambiente 2, retirássemos a linha que contém a seguinte instrução: "pont++";
d) No ambiente 2, se adicionássemos acima da expressão "getch();" a seguinte linha: "printf("%d", *pont);" e executássemos o algoritmo, seria impressa a seguinte sequência: "1233".
e) NDA.
Assinar:
Postar comentários (Atom)
3 comentários:
- Thiago Moreno -
A resposta incorreta é d).
Para explicar,
Fora alocado um valor de x=3, portanto, o ponteiro reservará 3 endereços de memória sequenciais: Posição 0, Posição 1 e Posição 2. Por defeito, como observado no segundo laço “for” do Ambiente 2, o ponteiro é incrementado 3 vezes fazendo com que o ponteiro aponte automaticamente para a Posição 3 no último ciclo.
Como a posição 3 não foi alocada na memória e o ponteiro "*pont" não foi decrementado, a impressão de “*pont” mostrará a sequência “123” + “Valores aleatórios de endereços” gerando valores não determináveis depois da sequência "123".
Temos um conflito nessa questão!!!!Pois vc pede para assinalar a questão errada.Note Letra B=> Vc afirma "Ambos os ambientes geram a mesma impressão.".Na letra C vc diz o contrario=>" A alternativa anterior seria incorreta se, no Ambiente 2, retirássemos a linha que contém a seguinte instrução: "pont++";"Se vc pede para assinalar a questão errada isso quer dizer que a tirando a Letra D todas as alternativas estariam certas, mais isso não acontece!
Heey então, vamos ao raciocínio:
Deve-se escolher a alternativa incorreta, como pedido na questão.
A alternativa B) está correta. A alternativa C) está correta.
"Se" retirássemos a linha que contém 'pont++', a alternativa B) estaria incorreta pois o ambiente 1 geraria a impressão '123' e o ambiente 2 geraria a impressão '111', logo, a alternativa C) também é correta.
Resumindo, a unica alternativa incorreta é D).
Até mais.
Postar um comentário