#include<stdio.h>void main(){ int a[5]; printf("0x%x,0x%x",a,&a);}/*用VC6.0编译,运行结果是0x12ff6c,0x12ff6c。a是数组的首地址,也就是元素a[0]的存放单元,而&a是a的地址,a和&a为什么是同一个值呢?难道说a[0]的值和a的值放在一个内存单元中?*/难道C语言中常量就不要内存来存放吗?另外,sizeof(a)=20,而sizeof(&a[0])=4呢?