有人可以帮我解决以下问题吗?
定义一个具有以下原型的宏:
F(A, B, C, D)
将此宏用作
F(name, float, a, b)
后,您应该可以使用变量name.a
和name.b
。确保您的实现是可重用的,即您可以在同一个块中多次使用F
。此外,扩展它以便为变量添加预定义的前缀。也就是说,如果预定义的前缀是
pt
,那么在使用此宏之后,您应该可以使用pt_name.a
和pt_name.b
。
Citrix提问
答案 0 :(得分:2)
下面:
#define F(name, type, var1, var2) struct {\
type var1 ;\
type var2 ;\
} name
这应该有效。