2010-06-20 59 views
3

我可以使用forloop来获取C中“struct”的属性名称吗?或者我只是做了一个单独的列表? (只是我正在寻找的名称)循环结构中的属性 - C

+2

成员标识符用于人类和编译器,输出实际上并不关心名称,只是它在'struct'中被偏移了。因此,它泄露该信息(即,C没有反映)。 – GManNickG 2010-06-20 17:27:13

+0

你想达到什么目的?你想如何处理不同的类型?一些伪代码可能有助于提供替代建议。 – 2010-06-20 17:37:13

+0

我正在使用函数指针,并想知道是否可以减少需要第二个名称列表。所以我可以循环列表并将其与单词进行比较以获得正确的回调。 – Jay 2010-06-20 17:42:19

回答

3

您必须制作一个单独的列表。 C编程语言没有任何内省功能,可以让您枚举结构的属性名称。

0

for循环没有能力枚举struct成员在C,没有。事实上,一旦编译完成,C程序根本就没有任何成员名称的概念,它只是使用来自结构指针的偏移量。