第二:定义数组的是时候下标是代表数组的长度,比如
int
a[5]就是定义一个长度为5的存放整型的数组,数组是啥?数组就是集合嘛!数组a有5个元素,即a[0],a[1],a[2],a[3],a[4],
一共5个元素奥,此时下标就是第几个元素的意思。
举个例子吧:
int
a[5]
=
{1,2,3,4,5}
printf("%d,%d,%d,%d,%d",
a[0],a[1],a[2],a[3],a[4])
//会输出1,2,3,4,5
a[0]
=
10
printf("%d",
a[0])
//输出10
现在明白了吧
在C语言中,下标用于数组的访问(读或写)。当定义一个数组时,形式为
TYPE array_name[NUM]
即定义一个元素类型为TYPE,共计NUM个元素的数组,名为array_name。
对于标准C语言(ANSI C), 数组长度NUM必须为常量,但是目前大多数编译器均扩展到可以支持变量。
当访问数组元素时,就需要使用下标,格式为
array_name[index]
其中[index]就是数组的下标,含义为数组array_name的第index元素。
在C语言中,index是从0开始计数的,所以对于NUM个元素的数组,合法下标范围为0~NUM-1。
下标可以是变量 也可以是常量。直接说a[0],a[1],a[2],a[3]这样的下标就是常量。对于访问来说, 不在意是变量还是常量, 系统只是需要一个值, 作为偏移量
不管是变量还是常量, 访问的时候 肯定是一个特定值, 而系统要的 无非是这样一个偏移量而已。