Arrays 如何从结构数组中获取值?(C)

Arrays 如何从结构数组中获取值?(C),arrays,c,pointers,struct,Arrays,C,Pointers,Struct,我一直在尝试访问我在结构数组中声明的值,如下所示 struct info{ int name[]; int age[]; }; const struct info arr_info[] = {{Pat,15}, {Emily,4}, {Matt,22}}; 我使用了下面的方法,但是,我发现只获得了指针。这是一个问题,因为我试图将此值传递给函数 arr_info[2].age 我在代码中需要什么来访问值本身 提前谢谢。你的意思可能是: //定义名为“info”的结构体。。。

我一直在尝试访问我在结构数组中声明的值,如下所示

struct info{
    int name[];
    int age[];
};

const struct info arr_info[] = {{Pat,15}, {Emily,4}, {Matt,22}};
我使用了下面的方法,但是,我发现只获得了指针。这是一个问题,因为我试图将此值传递给函数

arr_info[2].age
我在代码中需要什么来访问值本身


提前谢谢。

你的意思可能是:

//定义名为“info”的结构体。。。
结构信息{
//…具有字符串属性“name”。。。
字符*名称;
//…和一个表示“年龄”的整数。
智力年龄;
};
const struct info arr_info[]={{“Pat”,15},{“Emily”,4},{“Matt”,22};

你所定义的是一个包含数组的结构数组,考虑到你的任务行的意图,这真的没有任何意义。它意味着每个
info
结构可以有多个名称和多个年龄,而您需要的是多个
info
结构,每个结构都有一个名称和一个年龄。

int x[]
并不是您所认为的。这是一个由内而外的结构。去掉定义中的
[]
。什么是
Pat
?你的意思是“Pat”?编辑问题以提供答案。谢谢。我忘了在我的帖子中提到,我的名字实际上在程序的前面声明为int。如果你想使用
int
而不是
char*
,这是一个很容易解决的问题。