指示付き初期化子
指示付き初期化子(designated initializer)
C99から追加された機能
配列の初期化や構造体の初期化がしやすくなる構文
code:memo
struct something my_struct = {
.field_1 = value,
.field_2 = value,
...
};
ref: On the initialization of structures 【LWN.net】
.field_1、.field_2が指示子(designator)
enumを使うと可読性がアップする
code:c
// Character names can be associated with enumeration constants
// using arrays with designators:
enum { RED, GREEN, BLUE };
const char *nm[] = {
RED = "red",
GREEN = "green",
BLUE = "blue",
};
ref: Array initialization - cppreference.com
確認用
Q. 指示付き初期化子
参考
Array initialization - cppreference.com
On the initialization of structures 【LWN.net】
メモ
Designated Initializer - いけむランド
7.8 指示付きの初期化子 (Designated Initializer) - プログラミング言語 C の新機能
Designated initializers for aggregate types (C only) - IBM Documentation
調査用
Google.icon 指示付き初期化子(日)
Google.icon Designated initializer(英)
Wikipedia.icon
指示付き初期化子 - Wikipedia(日)
指示付き初期化子(検索) - Wikipedia(日)
Wikipedia.icon
Designated initializer - Wikipedia(英)
Designated initializer(検索) - Wikipedia(英)