模块化编程,三个宏定义既对外公开程序也用,如何规划?

2020-01-13 18:25发布

我想把红外解码程序模块化,程序void ir_nec_decode(int8_t *decode_status,int8_t *nec_code)包括两个指针,*decode_status输出解码结果GET_NEC_NULL /GET_NEC_1ST_CO/DE GET_NEC_REP_CODE ;nec_code输出解码结果的4字节数组。
其中头文件:
  1. #define GET_NEC_NULL        0
  2. #define GET_NEC_1ST_CODE    1
  3. #define GET_NEC_REP_CODE    2


  4. extern void ir_nec_decode(int8_t *decode_status,int8_t *nec_code);
复制代码当中几个宏定义:
  1. #define GET_NEC_NULL        0
  2. #define GET_NEC_1ST_CODE    1
  3. #define GET_NEC_REP_CODE    2
复制代码我既要对外开放,程序ir_nec_decode中也需要用到。
如果在.h和.c中都写一遍
或者.c中include自身这个.h一次
都感觉不符合模块化的原则。
这种情况应该如何处理?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
lcw_swust
1楼-- · 2020-01-14 00:00
 精彩回答 2  元偷偷看……
neutronlmk
2楼-- · 2020-01-14 03:16
lcw_swust 发表于 2019-4-1 15:38
include挺好的呀,难道再写一个config.h

我现在就是这个纠结,难道要建第二个头文件?
zhugean
3楼-- · 2020-01-14 04:01
“.c中include自身这个.h一次”不是普通的做法吗?
neutronlmk
4楼-- · 2020-01-14 09:36
zhugean 发表于 2019-4-1 15:49
“.c中include自身这个.h一次”不是普通的做法吗?

引用自身.h不知道符不符合模块化原则
如果大家都这样我就做了
zhugean
5楼-- · 2020-01-14 09:45
neutronlmk 发表于 2019-4-1 16:01
引用自身.h不知道符不符合模块化原则
如果大家都这样我就做了

我们模块化的规定就是必须包含自己的头文件
neutronlmk
6楼-- · 2020-01-14 12:08
 精彩回答 2  元偷偷看……

一周热门 更多>