指標陣列的初始化語法:
我們在這定義乙個 int型別的 指標陣列 name
int *name = ;
name陣列的初始化通過乙個數字列表實現,
列表中的每個數字賦值給陣列name中相應位置的元素,
第n個數字存貯在儲存器中的某個位置,
指向他的指標儲存在name[n]中。
但是我們需要注意的事,由於上述宣告中沒有指名陣列name的長度,因此,
編譯器編譯時將對陣列的初始值的個數進行統計,並將這乙個準確的數字填入陣列的長度中。
下面讓我們來編寫乙個函式
函式名:month_name
函式的作用是:返回第n個月的名字
/* month_name 返回第n個月的名字 */char *month_name(n)
return (n < 1 || n > 12 ) ? name[0] :name[n];
}
上面這個函式當 n為1 - 12 之間的數的時候 函式返回 指標陣列name中 指定的值
當n為1-12之外的值得時候 函式返回name[0] 即為illegal month
C語言陣列初始化
陣列宣告時必須指明陣列元素的資料型別以及陣列中元素個數,計算機才可以為陣列預留出足夠的空間。陣列大小必須為常量。define size 10 int a 12 int b 100 c size 可以在宣告時通過初始值列表實現陣列元素初始化 int a 3 如果初始值列表中提供的元素個數少於陣列元素個...
C語言陣列初始化
wchar t wname 128 char cname 256 我感興趣的是 1.這種賦值的結果。2.這種形式是否符合標準編碼規則?我找到了如下資料,可能有助於對這個知識點的掌握。初始化值的個數可少於陣列元素個數。當初始化值的個數少於陣列元素個數時,前面的按序初始化相應值,後面的初始化為 0 全域...
c語言 柔性陣列初始化
在做專案時,遇到相似結構,差異在乙個成員,這個成員想表達可變陣列,資料結構如下 struct a struct b 目的 合併兩個結構,用同乙個結構表達 初始化變數,或陣列 首先合併ab兩個結構不難,可以使用柔性陣列 struct ab 這樣可以初始化成員 struct ab var 問題似乎解決,...