“数组名代表数组的首地址”,它储存在哪里呢?

数组名一般只是一个字符,必定有一个实体内存空间储存这个地址,它是以数组名为名的常量吗?假如已经定义了数组a[10],再定义int a是否正确?

如果定义了a[10] 在定义int a是不行的
如果是这样的int a[10];在编译的时候 系统会自动帮你在栈中申请10*sizeof(int)的空间,起始位置是a,a的值也是随机的,该数组在用完了会被立马释放。
用户也可以自己手动申请空间,自己申请的是在堆中申请的
申请一维数组c++:int *p = new int[10];这个空间在不用时需要用户自己手动释放,要不内存会溢出
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-19
定义数组a[10]后a就表示数组的首地址,不能再重复定义一个int a,其实你如果不清楚,可以自己试试
相似回答