结构体怎么调用另一个结构体中的数组

比如:
typedef struct person
{
char name[10];
}CharPerson;

typedef struct queue
{
CharPerson dancer[max];
int front,rear;
int count;
}IntQueue;

IntQueue MaleQueue;

怎么给MaleQueue中的person中的name 赋值或调用

类和类直接使用对方数据,必须有实例,MaleQueue对象必须有person的实例才能使用其name
例如你要访问dancer中第i个元素的name不就是

dancer[i].name追问

是我没讲清楚,我是想说“怎么给MaleQueue中的dancer[i]中的name 赋值或调用"?
q->dancer[q->rear].name[10],这样可以吗?

追答

不需要[10]
q->dancer[q->rear].name接口
赋值必须用strcpy

追问

谢谢,明白了,麻烦指教下,printf第一个输出,第二个不能,是返回的问题?
char DelQueue(IntQueue* q) //推出队头的名字
{
char a[10];
scanf("%s",q->dancer[q->front].name);
strcpy(a,q->dancer[q->front].name);
printf("%s \n",a);
return a;
}
void main()
{
IntQueue MaleQueue;
printf("%s \n",DelQueue(&MaleQueue));
}

追答

任何返回临时数组得行为都是错误得

温馨提示:答案为网友推荐,仅供参考
相似回答