Sequence point from function call?

前端 未结 2 1615
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-12 12:56

This is yet another sequence-point question, but a rather simple one:

#include 
void f(int p, int) {
  printf(\"p: %d\\n\", p);
}

int g(int*          


        
2条回答
  •  梦谈多话
    2021-01-12 13:36

    No. It doesn't invoke undefined behavior. It is just unspecified, as the order in which the function arguments are evaluated is unspecified in the Standard. So the output could be 0 or 42 depending on the evaluation order decided by your compiler.

提交回复
热议问题