是否建议使用宏访问全局变量?

时间:2019-02-25 11:16:36

标签: c

我在C文件中看到了这段代码:

Abcd.h文件-

#define X (&y) 

Abcd.c文件-

extern int y;

使用宏访问全局变量地址或全局结构字段是一种常见的做法吗?

建议这样做吗?如果是,为什么?如果没有,为什么?

2 个答案:

答案 0 :(得分:0)

我认为那没那么糟...

某些实现与df = Df2.xs('M', axis=1, level=0, drop_level=False).rename(columns={'M':'A'}, level=0) Df1 = Df1.add(df, fill_value=0) print (Df1) A G L O L O 1 14.0 6.0 3.0 2.0 2 16.0 8.0 3.0 2.0 3 18.0 10.0 3.0 2.0 4 12.0 8.0 3.0 2.0 5 8.0 4.0 NaN NaN 类似:

errno

答案 1 :(得分:0)

我已经看到了用于简化复杂表达式或简化访问深度嵌套结构的成员的宏,例如

#define GET_NAME(foo) (foo)->bar->blah->name

不过,我从未见过有人使用宏来正义对特定全局对象进行&抽象操作。没有更多的上下文,我不能说这是一个好主意。