C は引数の評価順、未規定だよなー。気持ちよくメソッドチェインしてたら C++ で組んでたの忘れかけてた(コラ
#include <cstdio> int hoge(int i) { printf("%d\n", i); return i; } void huge(int, int) { } int main() { printf("[C/C++]\n"); huge(hoge(0), hoge(1)); return 0; }
[C/C++]
1
0
irb(main):001:0> def hoge(i); puts i; i; end
=> nil
irb(main):002:0> def huga(a,b); end
=> nil
irb(main):003:0> huga(hoge(0),hoge(1))
0
1
=> nil