Determinação da ordem de avaliação do argumento da sub-rotina [duplicado]

Esta pergunta já tem uma resposta aqui:

or que essas construções usam um comportamento indefinido pré e pós-increment 14 respostas

stou escrevendo um programa em C que determina a ordem em que os argumentos da sub-rotina são avaliado

O que tenho até agora é o seguinte:

int i=1;
printf("%d %d %d\n", i++, i++, i);

mas não tenho certeza se estou no caminho correto ou seria mais fácil escrever em um idioma diferente como Rub

omo posso escrever um programa em C (ou Ruby) que determine a ordem na qual os argumentos das sub-rotinas são avaliado

questionAnswers(2)

yourAnswerToTheQuestion