#include <stdio.h> int main() { //常规初始化方法:int ages[5] = {10, 20, 23, 0, 32} //int ages[5] = {20, 22} 虽然前面定义的是5,后面可以不用一定写5个元素 //int ages[5] = {[3] = 10, [4] = 5} 这样是指定第三、四个元素的值是10、5,前三个元素的值都是0 //int ages[] = {10, 12, 3} 后面定义了元素个数,前面不定义也是可以的 //int ages['A'] = {10, 20, 16} 这样写是可以的,因为‘A'可以理解为65
//错误写法: //1、int [ ]; 没写元素个数,编译器会报错(不知道该分配多少字节来储存) //2、int = {10, 12, 23, 43} 错误写法,职能在定义数组的同时进行初始化 /* 3、 int = count; count = 5; int ages[count] = {10, 11, 12}; 如果想要在定义数组的同时进行初始化,元素个数必须是常量或者不写,所以上面写法错误 */ /* 4、 int = count; count = 5; int ages[count]; ages[0] = 10; ages[1] = 11; ages[2] = 12; 这种写法编译器不会报错,输出结果前三位就是10、11、12但是后两位是不确定对值 */ int ages[] = {10, 11, 12, 13, 14}; int count = sizeof(ages) / sizeof(int); for (int i = 0; i < count; i++) { printf("ages[%d]=%d\n", i, ages); }
return 0; }
|