互相反复调用,一方面是死循环,另一方面,系统资源堆栈会耗尽.
我们可以加一个循环控制条件,让它只循环有限次结束.
#include stdio.h
int k=0,k_m=10; // 用k 记录次数,设最多次数为 k_m
int change();
int change1();
int main(){
change();
return 0;
}
int change(){
int i;
k◆◆; if (k k_m) return 1; // 次数满了,结束程序
printf("a=%d\n",a);
change1();
return 0; // 正常返回0
int change1(){
int i1;
printf("b=%d\n",b);
return 0; // 正常返回0
这就没问题了.
因为嵌套结构就是c语言中容易出错的部分.
C语言中程序常见有三种嵌套结构,即选择结构嵌套、循环结构嵌套、函数调用嵌套,笔者通过对以上结构教学分析,告知读者在使用的过程中三者的需要注意之处,对提高C语言学习效率很有好处.
你的两个指针函数的返回值都是指针,但函数体内部都没有返回指针,这样编译器是会报错的.