我在将整数传递给函数时递减整数。但是我看到了一些意想不到的行为。我是 C 新手,不知道该怎么做:
#include <stdio.h>
void func(int, int);
int main(){
int i=3;
//func(i--, i); //Prints a=3, b=2
func(i, i--); //Prints a=2, b=3 ??
func(i, --i); //Prints a=2, b=2 ??
}
void func(int a, int b){
printf("a=%d\n", a);
printf("b=%d\n", b);
}
第一次调用func
按预期工作,但第二次和第三次调用是怎么回事?