-2

任何人都可以帮助我解决以下问题吗?

定义一个具有以下原型的宏:

F(A, B, C, D)

使用此宏 as 后F(name, float, a, b),您应该可以使用变量name.aname.b。确保您的实现是可重用的,即您可以F在同一个块中多次使用。

此外,扩展它以便将预定义的前缀添加到变量中。也就是说,如果预定义的前缀是pt,那么在使用这个宏之后,你应该可以使用 pt_name.a, 和pt_name.b

思杰询问

4

1 回答 1

2

这里:

#define F(name, type, var1, var2) struct {\
                                     type var1 ;\
                                     type var2 ;\
                                  } name

那应该行得通。

于 2012-07-03T14:02:28.680 回答