0

このマクロは何をしますか? その定義を理解できません:

#define PAIR(def) [def] = { .name = #def, .val = def, },

出典:ltp-full-20120401/lib/tst_res.c 183行目

このリンクからソースを取得できます

4

1 に答える 1

2

構造体の配列を初期化するために使用されているようです。

#define PAIR(def) [def] = { .name = #def, .val = def, },

次のように使用されるマクロは、次のようPAIR(FOOBAR)に展開されます。

[FOOBAR] = { .name = "FOOBAR", .val = FOOBAR, },

.name配列要素.valの型のメンバーになります。struct

于 2012-05-19T05:49:35.907 に答える