看懂你的意思了。
你如果要用player-> 的话你的结构体的名称就最好不要用player。
struct playe {
struct state play[100];
int card;
};
struct state {
int no;
int number;
};
struct playe *player; //声明一个playe结构体变量叫player。
player=(struct playe*)malloc(sizeof(struct playe)); //开空间
其他自己来
//---------------------------------------------------------------------------
#include
#include
struct state {
int no;
int number;
};
struct player {
struct state play[100];
int card;
};
int main(void)
{
struct player *a;
a=malloc(sizeof(struct player));
a->card=3456;/*访问card*/
a->play[0].no =0;
(a->play+1)->number =1; /*为a.play[1].number赋值*/
printf("%d\n%d",(a->play+0)->no ,a->play[1].number) ;
free(a);
return 0;
}
//---------------------------------------------------------------------------
比如说下面一段代码,我需要如何用malloc 才能用player->play[i]->no??
struct player {
struct state *play[100]; //想都用指针符号的话这里得改成指针数组才行。然后再在后面把所有的指针动态分配空间。
};
struct state {
int no;
int number;
};}