使用C语言开发项目的一些心得
2014-10-16 22:27 双头蛇 阅读(343) 评论(0) 编辑 收藏 举报1、头文件不定义变量,函数。
当定义全局变量/函数,并且被多个源文件包含时会出现错误。
当定义静态变量/函数,并且被多个源文件包含时会出现内存浪费。
2、头文件要包含该头文件所需的头文件
否则,头文件的包含顺序将严重影响代码编译。
举个例子:
/*******A.H*******/ void func(ST *pST); /****common.h****/ typedef struct ST{...}ST; /*****MAIN.C*****/ #include "common.h" #include "A.H"个人认为这样写法不好,A.H用到了ST的定义,要把ST定义的头文件加进去。
不然每次在加A.H之前,一定要先加common.h,所以代码改为:
/*******A.H*******/ #include "common.h" void func(ST *pST); /****common.h****/ typedef struct ST{...}ST; /*****MAIN.C*****/ #include "A.H"
3、函数名不要一样
虽然不同的源文件使用静态的同名函数不会产生编译链接错误,但是在查看测试代码时会造成一些困扰,问题还是可以解决的,但是麻烦。
4、结构体类型名称不要一样,即使一样,也不要定义不一样!!!不要重复定义,尽量用原来的。这要求头文件的设计要尽量合理
我们公司的代码就是存在这样的问题,不同的地方都定义了ST,但是定义却不一样,公司的编译器没出错,移植到VS平台就出错了!
5、文件名不要一样!