構造体の初期化

テイルズ オブ ヴェスペリアの体験版をダウンロード中。

C言語の構造体を初期化します。書記化します。


typedef struct Hoge {
   int a;
   int b;
   char *c;
} Hoge;

int main(int argc, char* argv[]) {
   Hoge hoge = {0, 0, NULL};

   printf("%d, %d, %s", hoge.a, hoge.b, hoge.c);

   return 0;
}

こんな感じです。{}が初期化子です。メンバの値を列挙すればよいです。が、これは省略できます。


int main(int argc, char* argv[]) {
   Hoge hoge = {0};

   printf("%d, %d, %s", hoge.a, hoge.b, hoge.c);

   return 0;
}

省略すると、数が足りないメンバは0で初期化されます。
トリビアルメモです。

以上

コスミー について

昔(?)はゲーム作ってました。 今もなんか作ろうとしています。
カテゴリー: C言語, Tips パーマリンク

コメントを残す

メールアドレスが公開されることはありません。