ホーム » スタッフ » 斉藤徹 » 構造体の使い方

2011年9月
« 8月   10月 »
 123
45678910
11121314151617
18192021222324
252627282930  

最近の投稿(電子情報)

アーカイブ

カテゴリー

構造体の使い方

プログラミング応用の後半は、 構造体(構造体・共用体・ビットフィールド)と、中間以降はグラフィックスという予定を 説明してから説明を開始。

構造体を使わない場合の問題点として、 名前と電話番号のデータベース構築をテーマに、 問題点を説明。 複数の配列を宣言すれば、途中で1人分のデータに変更が加わって、 配列宣言すべてを見なおさないといけなくなることを紹介。

// まずは構造体の宣言を理解してもらうため
struct Person {  // Personはタグ名
char  name[ 20 ] ;  // 要素の宣言
int   age ;
} table[ 50 ] ;  // table は Person型の50件分
// 実際は、構造体の宣言と、構造体変数の宣言は別に書く。
struct Person {
char name[ 20 ] ;
int   age ;
} ;
struct Person table[ 50 ] ;
void main() {
struct Person saitoh ;
saitoh.age = 46 ;
strcpy( saitoh.name , "斉藤" ) ;
printf( "%s %d¥n" ,
saitoh.name , saitoh.age ) ;
}

構造体は入れ子にすることもできる。

struct Person {
char name[ 20 ] ;
int   age ;
struct Birthday {
int year ;
int month ;
int day ;
} bday ;
} ;

構造体変数の一括代入とか説明したけど、 構造体の初期化を説明しなかったな…