今天碰到一个局部静态变量的作用域的问题。有些诱惑,所以回去上机实践了以下,总结如下:
cpp 代码
- #include <stdio.h></stdio.h> <stdio.h></stdio.h> <stdio.h>
- int* f1(int i)
- {
-
- static int s = 2;
- s = s +i;
- return &s;
- }
- void main()
- {
- int *a = f1(1);
-
- printf("cout:%d\n",*a);
-
- a = f1(1);
-
- printf("cout:%d\n",*a);
-
-
-
- }
运行结果: