Loose-Info.com
Last Update 2012/07/05
TOP - C言語 - 構造体 - 宣言

構造体の宣言は次のような形式となります。

struct  名前1  {  型名   名前2  ; ... };

名前1 : 宣言する構造体の識別名
型名 : 構造体メンバーの型名
名前2 : 構造体メンバーの識別名
...以降構造体メンバーは複数列挙可能

struct {  型名   名前1  ; ... }  名前2  , ...;

型名 : 構造体メンバーの型名
名前1 : 構造体メンバーの識別名
...以降構造体メンバーは複数列挙可能
名前2 : 構造体として利用する変数名
複数記述可能

(例)
#include <stdio.h> struct struct_test { int i; double d; }; int main() { /* 定義済みの構造体の変数を宣言 */ struct struct_test st1; /* 変数の宣言と同時に初期値を設定 */ struct struct_test st2 = {3, 4.0}; /* 識別名の無い構造体の変数を宣言 */ struct {int i; double d;} st3; st1.i = 2; st1.d = 3.0; st3.i = 4; st3.d = 5.0; printf("st1 = {%d, %3.1f}\n", st1.i, st1.d); printf("st2 = {%d, %3.1f}\n", st2.i, st2.d); printf("st3 = {%d, %3.1f}\n", st3.i, st3.d); return 0; }

実行結果
st1 = {2, 3.0} st2 = {3, 4.0} st3 = {4, 5.0}