GNU C中陣列指定初始化
在GNU C中,陣列支援指定初始化。簡單來說,就是在初始化陣列和結構體時,可以通過指定陣列下標或者具體成員名來賦初值。
例如支援下面這樣的初始化:
int array[6] = { [4] = 29, [2] = 15 }; // 可以不按順序賦值
還支援將陣列中指定範圍內的元素賦值為相同的值:
int array[] = { [0 ... 9] = 1, [10 ... 99] = 2, [100] = 3 };
利用這個特性,我們可以在申請陣列的同時進行初始化,比如全部清零:
int array[NR_MAX + 1] = {[0 ... NR_MAX] = 0}
這相當於呼叫了memset(array, 0, sizeof(array)),比較了一下效能,發現基本相同。
相關文章
- Java 中初始化陣列Java陣列
- C++ 陣列宣告和初始化C++陣列
- c語言中陣列的宣告與初始化C語言陣列
- golang 陣列去重 移除陣列指定元素Golang陣列
- c++中的陣列C++陣列
- 陣列的初始化陣列
- 陣列刪除指定項陣列
- 陣列--移除陣列中指定的元素,不改變原陣列和改變原陣列陣列
- JavaScript 刪除陣列指定元素JavaScript陣列
- JavaScript陣列檢索指定元素JavaScript陣列
- js 在陣列物件中匹配到指定的資料JS陣列物件
- JavaScript 陣列 指定索引位置插入元素JavaScript陣列索引
- 快速取出陣列中指定鍵值陣列
- C/C++ 二維陣列的理解(多維陣列)C++陣列
- python3 陣列(列表)初始化Python陣列
- Java陣列初始化三種方式Java陣列
- 陣列的三種初始化方式陣列
- C語言使用指標對陣列指定位置進行插入元素C語言指標陣列
- Js陣列物件的屬性值升序排序,並指定陣列中的某個物件移動到陣列的最前面JS陣列物件排序
- JavaScript陣列指定位置插入新元素JavaScript陣列
- Array · 刪除陣列中指定的元素陣列
- Java擷取指定區間內的陣列元素並存入新陣列Java陣列
- C/C++ 讀入一個整型陣列,陣列大小未知C++陣列
- JavaScript專題之學underscore在陣列中查詢指定元素JavaScript陣列
- c語言中陣列的宣告喝初始化的區別和聯絡C語言陣列
- c# 陣列排序C#陣列排序
- C++陣列 字串C++陣列字串
- C語言陣列C語言陣列
- [JAVA] Java 陣列、多維陣列,動態、靜態初始化,陣列JVM記憶體模型分析Java陣列JVM記憶體模型
- 每日 30 秒 ⏱ 優雅初始化陣列陣列
- 大家怎麼初始化多維陣列陣列
- vue生成初始化名字相近的變數並放到陣列中Vue變數陣列
- C語言指定初始化器解析及其應用C語言
- C++陣列在年曆列印中的運用C++陣列
- Java陣列如何實現動態初始化Java陣列
- 【基礎題】【陣列】定義並初始化陣列
- C++陣列長度C++陣列
- c++陣列排序插入C++陣列排序