The following code
void function(char* p1, char* p2)
{
// [...]
return;
}
char* print(char* msg)
{
printf("%s\n", msg);
return msg;
}
function(print("first"), print("second"));
gives output like this: second first
I'm curious why its executing functions from right to left.