数组是一种简便的数据类型,它能够以一组连续的内存空间来存储多个元素。在使用数组时,必须先定义它,这意味着在内存中要先为数组分配一定的空间。而初始化则是给数组的每个元素赋初值。
定义数组的一般形式为:类型名 数组名[数组大小];例如:int arr[5]; 表示 arr 数组有 5 个元素,每个元素都是 int 类型。
初始化数组有两种方式:一是在定义时进行初始化,如:int arr[5] = {1, 2, 3, 4, 5}; 二是在定义后单独对每个元素进行初始化,如:arr[0] = 1; arr[1] = 2; arr[2] = 3; arr[3] = 4; arr[4] = 5;
在定义数组时进行初始化是最常见的方式。这种方式适用于已经知道数组元素的初值,或是规模较小的数组。
在定义数组时,使用大括号将每个元素的初值括起来,各元素的初值之间用逗号分隔。例如:int arr[5] = {1, 2, 3, 4, 5}; 这表示定义了一个 int 类型的数组,它有 5 个元素,每个元素的初值分别为 1, 2, 3, 4, 5。
需要注意的是,在使用大括号进行初始化时,若初始化元素的数量少于数组的容量,数组中未初始化的元素将自动赋值为0。例如:int arr[10] = {1, 2, 3}; 表示 arr 有 10 个元素,在这里只初始化了前三个元素,其余元素的值为 0。
在定义数组后单独对每个元素进行初始化也是可行的方式。这种方式适用于数组规模较大,而元素的初值又不能一次性获得的情形。
在需要初始化数组时,可以使用下标访问数组各元素,并为其赋初值。例如:int arr[5]; arr[0] = 1; arr[1] = 2; arr[2] = 3; arr[3] = 4; arr[4] = 5; 这表示在定义一个 int 类型的数组后,单独为数组中的每个元素进行初始化。
在使用数组时,有一些注意事项:
1)仅仅定义数组并不保证数组中各元素的初值是0。即使数组是用 int arr[100]; 进行定义的,数组中的各元素数值也不一定是0,因为这个数组可能被存储在内存上曾经被别的程序使用过的位置。
2)定义数组时,若未赋初值,则数组中的各元素是未定义的,他们的初值取决于数组所占用的内存地址所在的值。
3)在初始化时应确保数组所有元素都被初始化,切忌遗漏任一元素。
4)数组的下标从0开始计算。