打印
[C语言]

外部变量或者函数,应该在哪个头文件中声明?

[复制链接]
1337|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
彪哥|  楼主 | 2014-1-8 09:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ayb_ice| | 2014-1-8 09:48 | 只看该作者
谁用谁声明
不过我是定义声明一块搞定

使用特权

评论回复
板凳
彪哥|  楼主 | 2014-1-8 10:06 | 只看该作者
比如一个函数Delay(),可在多个.h文件中以extern void Delay()声明是吗?并不需要在其中某一个.h文件中声明其是内部函数吗?

使用特权

评论回复
地板
zxm19820916| | 2014-1-8 11:03 | 只看该作者
不好。应该在一个头文件里声明,然后用到这个函数的源代码文件包含这个头文件。

使用特权

评论回复
5
zmbnj| | 2014-1-9 10:52 | 只看该作者
文件test.c

#define        DEFINE_TEST
#include "test.h"

void func_test(void)
{
}

文件test.h

#ifndef _TEST_H_
#define _TEST_H_

#ifdef        DEFINE_TEST
#define EXTERN_TEST
#else
#define EXTERN_TEST                extern
#endif

EXTERN_TEST        uint8_t delay;
EXTERN_TEST        void func_test(void);

#endif

其他C文件用变量或函数,直接#include "test.h"。

使用特权

评论回复
6
盛夏的葡萄| | 2014-1-9 13:59 | 只看该作者
楼上方法用起来简单

使用特权

评论回复
7
xyz549040622| | 2014-1-9 21:12 | 只看该作者
在.c文件中定义和初始化,在.h文件中用extern申明

使用特权

评论回复
8
jjjkkk00| | 2014-1-10 09:01 | 只看该作者
在与源文件同名的头文件中声明。这样方便文件管理。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

171

帖子

1

粉丝