在C語言中,數組的初始化有以下幾種方式:
1. 定義的時候同時初始化:
int array[10] = {1,2,3,4,5};
2. 定義的時候不指定數組大小,由初始化的數組元素來確定大小:
int array[] = {1,2,3,4,5};
3. 先定義變量,然后初始化.注意點:定義變量時必須制定數組的大小.此時只能對數組變量成員元素逐一賦值,不能批量賦值.
// int array[]; //錯誤用法
int array[12];
// array = {1, 2, 3}; //錯誤用法.
array[0] = 1;
array[1] = 2;
array[2] = 3;
4. 只有一種情況,在作為方法的形式參數時,可以不指定數組的大小.這時傳入方法的是數組的首地址,所以在方法內部是無法得到數組長度的,數組長度必須作為參數傳入函數.
void test()
{
int array[] = {1,2,3,4,5};
int length = sizeof(array)/sizeof(int);
int result = sumOfArray(array, length);
printf("%d",result);
}
int sumOfArray(int array[], int length)
{
int result = 0;
for (int i=0; i<length; i++)
{
result += array[i];
}
return result;
}
