を構造体を初期化します。は私が構造を持っている単一のフィールドで
struct MY_TYPE {
boolean flag;
short int value;
double stuff;
};
私はでそれをintializeことができます知っている:
MY_TYPE a = { .flag = true, .value = 123, .stuff = 0.456 };
しかし、今、私は変数My_TYPE*
ポインタを作成する必要があると私はしたいです1つのフィールドを初期化するには?私は例を試しました:
MY_TYPE *a = {.value = 123};
コンパイルエラー"Designator in intializer for scalar type 'struct MY_TYPE *'"
が表示されます。
構造体を1つのフィールドで初期化することはできますか?
エラーは1つのフィールドとは関係ありません。 'struct initializer'でポインタを初期化することはできません。 – 2501
私の目標を達成することは不可能なのですか、それとも私の目標を達成する別の方法ですか? –
これは不可能ですが、構文上非常によく似たいくつかの方法が以下の回答に示されています。 – 2501