recherche

Maison  >  Questions et réponses  >  le corps du texte

C语言有关结构体的问题

上机运行结果是1 2,求解释
struct har
{ int x, y; struct har *p;} h[2];
main()
{

h[0].x=1;
h[0].y=2;
h[1].x=3;
h[1].y=4;
h[0].p=h[1].p=h;
printf("%d %d \n",(h[0].p)->x,(h[1].p)->y);
system("pause");
return 0;

}

高洛峰高洛峰2954 Il y a quelques jours1560

répondre à tous(3)je répondrai

  • 三叔

    三叔2016-11-19 15:14:31

    p指向了结构体数组的最前面,当然打印h[0]的内容。

    répondre
    0
  • 欧阳克

    欧阳克2016-11-19 15:14:24

    楼主这样赋值h[0].p=h+0; h[1].p=h+1;可能就会有你想要的答案了。

    répondre
    0
  • 三叔

    三叔2016-11-19 15:14:14

    h == &h[0]
    h[1].p == h == &h[0]
    h[0].p == h[1].p == &h[0]
    指向同一个地址h即&h[0],结果是显然的

    répondre
    0
  • Annulerrépondre