struct st
{
int n;
struct st *next;
};
static struct st a[3]={1,&a[1],2,&a[2],3,&a[0]};
如果下述语句的显示是2,则对p的赋值是____。
printf("%d",++(p->next->n));
A) p=&a[0]; B) p=&a[1]; C) p=&a[2]; D) p=&a[3];
正确答案C
struct st { int n; struct st *next; };第一句话说的是,定义一种结构体st,由整形和指向这个结构体的指针构成
static struct st a[3]={1,&a[1],2,&a[2],3,&a[0]};
第二句话是声明一个静态的含有三个元素的st结构体数组a
并且在声明时初始化
a[0]中n=1,next指向数组第二个元素
a[1]中n=2,next指向数组第三个元素
a[2]中n=3,next指向数组第一个元素