int c;
int f(int a);
int main()
{
int a, i = 5;
for(i = 0; i < 3; i++)
{
cout << i << " "<< f(a) << endl;
}
return 0;
}
int f(int a)
{
int b = 0;
b++;
c++;
return(a + b + c);
}
/*
0 32630
1 32631
2 32632
*/
这是运行结果,i 只有0、1、2,因为c没有给初始值,所以系统会随即给一个,每次运行f(a)的值会不一样;你每调用一次f(a), b都重新赋值为0了,所以每次都是1,
个人理解,如有错误,欢迎指正。