今天在学习C的时候,又学到了一些新的内容,所以赶紧记录下来。
case 1:
#include <stdio.h>
union exa{
struct{
int a;
int b;
}out;
int c;
int d;
};
void main()
{
union exa e;
e.c=1;
e.d=3;
e.out.a=e.c;
e.out.b=e.d;
printf("%d,%d
",&e.c,&e.d); //行1
printf("%d,%d
",&e.out.a,&e.out.b); //行2
printf("%d,%d
",e.out.a,e.out.b); //行3
}
行3运行结果是 3,3开始不明白原因,现在添加行1行2一切了然:
case 2:
下面这段神奇的代码,你才结果是什么:
#include<stdio.h>
void main()
{
char a[][7]={ "Teacher","Tom" , "Good"};
char *p=a[0];
p=p+3;
printf("%s
%s
", a[0],p);
}
结果你懂得 ' '