如题,我在写模块化程序的时候,尝试用.c和.h来构成头文件的形式,单独或者少量的包含头文件进工程里面是可以通过编译连接的,但是有时候编译器会报错;会提示重复定义变量的错误,或者未解决的外部变量,又或者提示重复定义的public 变量,另一种情况是 ,假如我要用一个一维数组,把它定义成 code 类型也会提示错误,去掉code 关键字它又能编译通过了,这是什么情况???我用的keil4;
我一般是这样定义的 :
///////////////////// a .h
#ifndef _A_H_
#define _A_H_
unsigned char a;
char fun (char x);
#endif
//////////// a.c
#include "a.h"
unsigned char a=10;
char fun (char x)
{
return (a*x*x);
}
|