構造体の宣言は以下のように行う。
struct 構造体タグ {
型1 メンバ1;
型2 メンバ2;
...
};
またtypedef文を使って
typedef struct {
型1 メンバ1;
型2 メンバ2;
...
} 構造体名;
のようにしておくと,構造体名を新たな変数型として書くことができる。
たとえば,
typedef struct {
char lastName[30];
char firstName[30];
int age;
} member;
と定義しておけばプログラム中に以下の宣言で
int main(void)
{
member member_list[100];
...
}
のようにあたかも変数であるかのように宣言できる。
構造体は,構造体のメンバが同じメモリ領域を共有している点が構造体とは異なる。 共用体の宣言は以下のように行う。
struct 共用体タグ {
型1 メンバ1;
型2 メンバ2;
...
};