找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 2854|回复: 0
收起左侧

关于头文件

[复制链接]
ID:85109 发表于 2015-7-8 22:39 | 显示全部楼层 |阅读模式
                        1、在我之前学习的arm9的ADS1.2当中,头文件是写好了之后直接addfiles,然后在主函数中include头文件就可用头文件中的宏定义了

2、在keil mdk当中也是直接加add group 然后在GROUP中加add files进来 在主函数的中包含头文件和就行了,其中C文件直接用 不用包含。

3、多个.c文件时怎么连接在一起的呢?是这样的:假如有main.c和A.c, B.c,C.c,要在main函数中使用A.c, B.c, C.c这多个C文件里面的函数,现在假设这三个C文件当中各自有函数voidAAA();void BBB();void CCC();那么就要之前声明extern voidAAA();,才能使用AAA(),但是一般的这个extern写进了头文件当中,所以头文件有对应的A.H,B.H,C.H,在程序之前INCLUDE就行了

4、防止一个头文件被一个源文件多次包含的编译预处理

完整形式是
#ifndef _H_LETTER_H_A  ①
#define _H_LETTER_H_A  ②
头文件中的内容
#endif               ③

假设一个源文件第一次包含这个头文件 则 语句①成立然后执行语句②并把头文件的内容(到③处结束)拷贝到这个源文件。
当第二次包含此头文件,由于在第一次包含这个头文件是执行了语句②_H_LETTER_H_A已经被定义,这时语句①就不成立了就直接跳到语句③后面,这样这个头文件的内容就不会被包含两次,就防止了多次定义相同的变量或者函数。


回复

举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表