c语言中如何引用另一个源文件中定义的结构数组

如题所述

如果变量在另一个源文件(.c)中定义,那么需要在此源文件中使用extern进行一次声明。
比如数组定义为: struct student[MAX];
那么在此文件中的声明为: extern struct student[MAX];追问

比如在一个源文件中是这样定义的
struct Token{
int no;
char sym[10];
char c[32];
};
struct Token token[500];
那在另外的源文件中是不是这样引用
extern struct Token token[500];

追答

是的。但是这样存在struct Token 未定义的问题。
你必须把struct Token这个结构体类型的定义放在.h头文件里面。
变量token[500]不能放在头文件里,而必须放在源文件中。
一般类型、#define定义的常量是放在头文件里面的,具体变量的定义,则是放在源文件里面的。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-10
extern
相似回答