構造体

変数には、いろいろな型があります。関数を作る時に、いくつかの複数の変数を一つのまとまりとして、パッケージ化する ことによって、大変効率よく、データのやり取りが出来るようになり、プログラムの見易さからいっても、多くの利点が 得られます。構造体は、C言語の型変数をユーザが任意に選んで、構造化して、新たな型もどきを定義することが出来ます。 構造体を定義するには、型の内容を宣言する部分と、その新しい型変数を定義する部分とが必要になります。

記述例

構造体を定義(宣言)する場合には、変数型を複数個、用意し、リストにして定義します。 構造体を構成する変数のリストは、セミコロン「;」で、1つのオブジェクトとして、1つづつ定義してゆきます。


#include <stdio.h>

typedef struct {			/* 構造体の宣言 */
	char *coment1;		/* 構造体のメンバとなる変数を定義する */
	int val;
}com_dat;				/* 構造体の型の指定子の名前を決める */

int main(void)
{
	com_dat mydata;		/* ユーザ型(構造体)の変数定義、変数名の定義 */

	mydata.coment1 = "my spesial data";	/* 構造体メンバへのアクセスと代入 */
	mydata.val = 10;			/* 構造体メンバへのアクセスと代入 */

	printf("mydata.coment1 = %s\n", mydata.coment1);
	printf("mydata.val = %d\n",	mydata.val);

	return 0;

}

typedef ユーザ型を宣言する時に用いるC言語の予約語、構造体宣言の時によく使う
struct 構造体を宣言する時に用いる予約語、構造体を宣言するときには、必ず必要
com_dat 構造体の型変数を定義する時に必要となる識別子、型指定子としての「com_dat」を宣言する意味がある

定義された構造体の中身の個々の変数へのアクセス(データのやり取り)は、構造体変数名に続いて「.」を用いて、 「mydata.coment1」のように記述します。構造体の中身の個々の変数のことを「構造体のメンバ」という言い方をします。

サンプルソース(avaloky6.cpp)

サイト紹介
サイトマップ
C言語入門
Web制作入門
Web素材集
フリーソフト紹介
リンク集
関連書籍の紹介
連絡フォーム

C言語入門
28b←[29]→29a