C语言数组的问题?

来源:百度知道 编辑:UC知道 时间:2024/05/10 05:48:14
例如一个数组是 int a[i] 当i等于5的时候,是不是也就是说a当前值就是5?

显然不是啦,i是数组下标,和数组中相应元素所存储的值无关。
比如:int a[5]="{1,3,5,7,9},则a[4]=9(注意定义a[5]时,其下标是0 1 2 3 4共5个元素)。
此外:数组名a其实是一个地址,代表数组a的首元素存放地址。
另外说一句,int a[i];如果在函数开头(即main()的前面)没有出现类似#define i 4 也就是说没有将i进行宏定义时是错误的写法。因为数组不能用变量作为其维数。只能用常量或者符号常量。

i只是你所定义的数组的下标,a是你的数组名,并不是i等于多少a就等于多少.这两个变量是不相同的