如何写入struct数组的第二个元素?在C.

时间:2014-01-04 13:48:31

标签: c arrays struct

struct people
{
    char *name;
    char *surname;
} *human;
human = malloc(10*sizeof(struct people));

大家好。我试图控制这个struct数组的元素,但我认为我做错了。
我试过这个来访问第二个元素的名字串
    human[1].name;
当它没有奏效时我尝试了这个     human[1.sizeof(struct people)].name;
提前致谢

1 个答案:

答案 0 :(得分:1)

声明结构和更简单的数组

typedef struct people
{
    char *name;
    char *surname;
} people;

people  * human=malloc(10*sizeof(struct people));

humam[0].name=malloc((10+1)*sizeof(char));

strcpy(human[0].name,"John");

不要忘记使用malloc作为姓氏和名称,因为结构只包含指针