#include <stdio.h>
int main()
{
struct stru
{
short m;
int n;
char s[4];
} a,* p;
p = &a;
a.m = 123;
a.n = 456;
a.s[0] = 65; a.s[1] = 66; a.s[2] = 67; a.s[3] = 68;
printf("%d,%d,%s\n", (*p).m, (*p).n,(*p).s);
return 0;
}
不知道为什么指针指向这片空间会超出s的范围。