Cadernos de Questões

Provas Favoritas

Filtros Salvos

Foram encontradas 70 questões.
#2798087

Considere o seguinte código em linguagem C:



Esse código foi compilado por meio do GCC 3.4.4 e produziu o resultado “20” ao ser executado. Isso aconteceu porque

  • existe umbugconhecido nessa versão do GCC que faz algumas expressões serem calculadas incorretamente.
  • segundo a especificação da linguagem C, a precedência dos operadores é diferente quando estes são invocados para determinar parâmetros de funções.
  • segundo a especificação da linguagem C, o resultado de uma expressão que atualiza mais de uma vez o valor de uma mesma variável é indefinido.
  • a variável “x” utiliza o operador de pré-incremento, que produz o valor dois; enquanto a variável “y” utiliza o operador de pós-incremento, que produz o valor zero.
  • é um comportamento esperado da linguagem, pois, de acordo a especificação, todos os operadores devem ser aplicados após a execução completa da expressão. Assim, o valor atribuído à variável “x” é sobrescrito pelos operadores de pós-incremento.
Fale com IAgo
IAgo - Assistente IAProva
IA
Olá! Sou o IAgo, seu assistente aqui no IAProvatec 😊
Veja como posso te ajudar:
Agora