C语言在一个函数里面定义了一个结构体,在另外一个函数里面使用:
struct tmp {
int a;
int b;
};
struct tmp c; //1. 采用全局变量
int func1()
{
struct tmp c;
func2(c); // 2. 采用传参
}
1. 定义成全局变量
2. 通过传递参数
3. 只能通过这两种方式
tmp.h
#ifndef TMP_H_
#define TMP_H_
struct Tmp {
int a;
int b;
};
extern struct Tmp c; //这里是main.c中定义的c的扩展,可以让包括这个头文件的文件中的函数 //都可以用这个变量
#endif //TMP_H_
把结构体写在tmp.h头文件中
在main.c中定义
struct Tmp c;
在其它的.c文件中包含tmp.h,那么这个文件中的函数就可以用这个c了
温馨提示:答案为网友推荐,仅供参考