如果我有类似的话:
struct foo {
struct bar {
char name[8];
int temp;
} example[100];
};
如果我想得到name
是什么,我怎么会这样说出数组中的第一个元素?
答案 0 :(得分:2)
#include <stdio.h>
struct foo {
struct bar {
char name[8];
int temp;
} example[100];
};
int main(void) {
struct foo my_foo;
printf("%s\n", my_foo.example[0].name);
return 0;
}
答案 1 :(得分:1)
我没有检查你的代码是否编译,但这可能是:
foo var;
var.example[0].name
答案 2 :(得分:1)
struct foo myfoo;
char * the_name;
/* initialize myfoo ... */
the_name = myfoo.example[0].name;
答案 3 :(得分:0)
struct foo var;
printf("name -- %s\n", var.example[0].name);
注意: 我建议你像这样缩写你的strcut:
typedef struct foo foo;
struct foo {
struct bar {
char name[8];
int temp;
} example[100];
};
像这样,你没有义务宣布你的vars:
struct foo var;
但
foo var;
祝你好运;