#include "stdio.h"
union ww
{
char s[4];
int k;
};
struct node
{
int a,*b;
union ww c;
};
main()
{
int a[5],i,n=0x6162;
struct node s[5],*p;
for(i=0,p=s;i {
p->b=a+i;
s[i].c.k=n++;
}
for(i=0;i a[i]=i*10+10;
p=s;
printf("%d",++*p->b);
printf("%d",*++p->b);
printf("%c",p++->c.s[0]);
printf("%d",*++p->b);
printf("%c",p->c.s[1]++);
printf("%x",p++->c.k);
for(i=0,p=s;i printf("%d,",*p->b);
}
/*
程序运行结果为:
1120b30a626320,30,30,40,50,
*/
===求教1)printf("%c",p++->c.s[0]);的结果为何等于b呢?
2) printf("%c",p->c.s[1]++);的结果为何等于a呢?
3)printf("%x",p++->c.k);的结果为何等于6263呢?
4) for(i=0,p=s;ib);的结果为何等于20,30,30,40,50,
一会儿上机看看,好难