【发布时间】:2014-04-16 10:59:46
【问题描述】:
以下代码
void function(char* p1, char* p2)
{
// [...]
return;
}
char* print(char* msg)
{
printf("%s\n", msg);
return msg;
}
function(print("first"), print("second"));
给出如下输出: 第二 首先
我很好奇为什么它的执行功能是从右到左的。
【问题讨论】:
-
标准中没有规定参数求值的顺序,由厂商自己实现