<分区>
Possible Duplicate:
function parameter evaluation order
假设我有一个有 4 个参数的函数。首先考虑执行哪个参数以及为什么。
我试图理解 ,
运算符用于函数原型(prototype)的重要性。按照规则,它是最先考虑的最后一个变量吗?
标签 c
<分区>
Possible Duplicate:
function parameter evaluation order
假设我有一个有 4 个参数的函数。首先考虑执行哪个参数以及为什么。
我试图理解 ,
运算符用于函数原型(prototype)的重要性。按照规则,它是最先考虑的最后一个变量吗?
最佳答案
如果我们有一个具有以下原型(prototype)的函数:
int function(int x, int y, int z);
我们这样调用它:
function( something_a(), something_b(), something_c() );
我们无法推测something_a
、something_b
和something_c
的执行顺序。
另一方面,我们可以按如下方式使用逗号运算符:
int main() {
int x;
something_a(), something_b();
something_c();
}
在这种情况下,我们知道 something_a
将被调用,然后是 something_b
,最后是 something_c
。
总而言之,函数调用中的逗号不是逗号运算符。
关于c - 函数的参数是如何执行的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10690026/