变量别放在头文件里。由于头文件可能被多模快引用,就可能出现重复定义。
作为全局变量,在一个模快中定义一次,而在其他模快中用“extern”说明之。
按LZ情形,应该出现的是“未定义”的错误,因为“extern”不提供实质意义上的变量物理空间的分配。
解决的方法是:
头文件中放置
enum abc {a,b,c};
C文件中放置
enum abc cc; // 在某一主模块中
extern enum abc cc; // 在其他模块中
这样,就可以对cc进行操作了,如:
cc = c;
作为全局变量,在一个模快中定义一次,而在其他模快中用“extern”说明之。
按LZ情形,应该出现的是“未定义”的错误,因为“extern”不提供实质意义上的变量物理空间的分配。
解决的方法是:
头文件中放置
enum abc {a,b,c};
C文件中放置
enum abc cc; // 在某一主模块中
extern enum abc cc; // 在其他模块中
这样,就可以对cc进行操作了,如:
cc = c;