指向结构体数组指针,第一次看见这样的题,该如何读?
#include <stdio.h>struct s1{
char *s;
struct s1 *ptr;
};
struct s1 a[]={
{"efgh",a+1},
{"ijkl",a+2},
{"mnop",a}};
struct s1 *p=a;
void main( ) {
int i;
for(i=0;i<3;i++ )
printf({"%s %s %c %s\n",a.s,a.ptr->s,a.s++,
++p++->ptr->s+1);
答案是fgh jkl e kl
jkl nop k op
nop fgh p gh
怎么会出现这样结果?