头文件如何编写

[复制链接]
 楼主| tiankeke 发表于 2008-7-12 11:43 | 显示全部楼层 |阅读模式
我想问一下,在C51中我自己如何编写头文件,比如说我想把自己写的一些功能函数,或自己习惯的定义放到一个头文件中
computer00 发表于 2008-7-12 13:36 | 显示全部楼层

将扩展名写成.h即可。

古道热肠 发表于 2008-7-12 14:20 | 显示全部楼层

要考虑重复包含同一个头文件时编译不出错

用#ifdef #endif来实现,建议楼主找些标准的头文件参考一个,比如研究string.h这个头文件,您会很有心得的.
dld2 发表于 2008-7-12 14:33 | 显示全部楼层

re

头文件里放什么:
  宏定义
  数据类型定义
  函数定义
  sometimes有人喜欢放全局变量声明  

头文件的功能:
  模块的配置。例如缓冲区开多大。
  模块的说明。其他模块根据头文件的内容,就可以调用该模块。就是描述这个黑匣子的外部接口。
huangqi412 发表于 2008-7-12 22:04 | 显示全部楼层

用键盘写. lz找两文件看下吧,自然知道了

 楼主| tiankeke 发表于 2008-7-13 10:17 | 显示全部楼层

谢谢

谢谢各位大侠呵呵。不过我发现一个问题。
我写了一个头文件,里面有一个函数实现两个数相加。如下:
#ifndef _add_h_
#define _add_h_
extern uchar add1;
extern uchar add2;
static uchar sum;

uchar add(add1,add2)
{

sum=add1+add2;
return sum;
}
#endif
如果不把SUM定义为STATIC则编译是出错。是不是在头文件中必须把用到的临时变量定义为STATIC?谢谢
huangqi412 发表于 2008-7-13 10:45 | 显示全部楼层

小建议:不要把函数体放头文件中

xwj 发表于 2008-7-13 10:49 | 显示全部楼层

函数体不应该放头文件里

头文件里只能放宏定义、声明,而不应该有任何产生变量分配、代码的语句
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部