一段代码求解析

falloutmx 2017-06-09 11:34:37

/** This is the actual memory used by the pools (all pools in one big block). */
static u8_t memp_memory[MEM_ALIGNMENT - 1
#define LWIP_MEMPOOL(name,num,size,desc) + ( (num) * (MEMP_SIZE + MEMP_ALIGN_SIZE(size) ) )
#include "memp_std.h"
];

这是lwip里的一个定义,memp_std.h头文件里包含的是各种宏定义。
第一次见到数组下标里有宏定义和引用头文件的,应该如何分析它?
宏定义那行也没看懂是把什么定义成什么了
...全文
246 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
#define是在预编译时处理,所以数组里的#define对数组本身没有影响的,实际数组是static u8_t memp_memory[MEM_ALIGNMENT - 1 ]
paschen 2017-06-09
  • 打赏
  • 举报
回复
这两行宏定义可单独拿出来,与数组无关,因为用#define定义的宏是在预处理阶段进行处理的,而非编译时期进行
赵4老师 2017-06-09
  • 打赏
  • 举报
回复
VC编译选项加/EP /P(项目、属性、配置属性、C/C++、预处理器、预处理到文件:是,预处理取消显示行号:是),重新编译,查看宏展开后对应的.i文件。gcc加-E http://bbs.csdn.net/topics/391003898
真相重于对错 2017-06-09
  • 打赏
  • 举报
回复
http://blog.csdn.net/angel_94/article/details/50809714

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧