Argumentos de retorno separados por vírgula na função C [duplicado]
Esta pergunta já tem uma resposta aqui:
O que o operador de vírgula faz? 9 respostasAo concluir um teste de programação C, me foi dada uma pergunta sobre a saída esperada de uma função que parece retornar dois valores. Foi estruturado da seguinte forma:
int multi_return_args(void)
{
return (44,66);
}
A pergunta me pegou de surpresa e, inerentemente, pensei que, se possível, o primeiro argumento seria passado ao chamado
Mas depois de compilá-lo, o resultado é 66. Depois de uma pesquisa rápida, não consegui encontrar nada sobre a estruturação de uma declaração de retorno como essa, então fiquei imaginando se alguns poderiam me ajuda
Por que se comporta assim e por quê?