C文件中这个结构的用途是什么?
#define _TIMERC
#include "timer.h"
#undef _TIMERC 我知道用于防止多个头文件包含的保护措施。然而,这似乎不是正在发生的事情。
谢谢!
发布于 2008-12-02 16:10:24
这里有一个场景来说明...
假设timer.h提供了一个宏tick_count(),它返回发生的计时器中断数。
一个使用定时器A进行间隔计时的模块(rpm_reader.h):
#define _TIMERA
#include "timer.h"
#undef _TIMERA 在另一个模块(lap_time.h)中,正在使用定时器C进行其间隔定时
#define _TIMERC
#include "timer.h"
#undef _TIMERC 当rpm_reader调用tick_count()时,它将从定时器A返回节拍计数,而lap_time将从定时器C获取其计数。
(我很抱歉回答了我自己的问题,但是问这个问题帮助我得到了这个启示。)
发布于 2008-12-02 15:48:58
通常情况下,库头文件将有多个选项,这些选项由宏定义启用和禁用。这将启用这样的选项。
更典型的是,这些是在全局范围内设置的,方法是配置您的构建系统将-D_TIMERC添加(例如使用gcc)到编译器命令行中。
发布于 2008-12-02 15:45:26
我想知道会不会是这样:
本例中的头文件旨在允许在每个#include之前建立具有不同定义的多个include。
如果在timer.h中有一个代码块(中断代码)用于微控制器中每个定时器的定时器A、B和C。在某些情况下,一个模块需要定时器A,而另一个模块需要定时器C。
https://stackoverflow.com/questions/334371
复制相似问题