1、静态变量不能跨函数使用
静态变量系统是固定分配内存的属于静态内存,一旦该函数使用结束所有静态变量内存空间都会重置释放,相当于清零
例如下面这段代码:
语法上并没有报错,编译器也能运行出来,但是逻辑上是不对的
当fun()函数使用结束后,其函数内部由系统自动分配的静态变量p和i内存空间会释放,所以q只能保存i的地址不能返回i的空间。
#include<stdio.h>
#include<stdlib.h>
void fun(int **p)
{
1、静态变量不能跨函数使用
静态变量系统是固定分配内存的属于静态内存,一旦该函数使用结束所有静态变量内存空间都会重置释放,相当于清零
例如下面这段代码:
语法上并没有报错,编译器也能运行出来,但是逻辑上是不对的
当fun()函数使用结束后,其函数内部由系统自动分配的静态变量p和i内存空间会释放,所以q只能保存i的地址不能返回i的空间。
#include<stdio.h>
#include<stdlib.h>
void fun(int **p)
{