構造体の宣言は,次のようする.
typedef struct{ char name[64]; int math; int engl; }seiseki;
メモリーの確保を行うためには,次のように型名と変数名を指定して変数の定義を行わなくてはなら ない.
seiseki gakusei;
この構造体には,nameとmath,englの3つのメンバーがある.これら3つ のメンバーにアクセスするためには,ドット演算子(.)を使う.
strcpy(gakusei.name, "Yamamda Masashi"); gakusei.math = 92; gakusei.engl = 78;
宣言と定義について これまで宣言(declaration)と定義(definition)という語句をいい加減に使っ てきた.これをはっきりさせておく必要がある.宣言とはオブジェクトの型を指定する ことである.定義とは,オブジェクト型を指定し必要な記憶領域を確保することである. |
seiseki M2[40], E2[40], C2[40], B2[40];
配列の場合も同じようにドット演算子を使って,アクセスできる.
strcpy(E2[5].name, "Itoh Misaki"); E2[5].math = 89; E2[5].engl = 96;
1 #include <stdio.h> 2 #include <string.h> 3 4 int main(void) 5 { 6 7 typedef struct{ 8 char name[64]; 9 int math; 10 int engl; 11 }seiseki; 12 13 seiseki gakusei; 14 15 strcpy(gakusei.name, "Yamamda Masashi"); 16 gakusei.math = 92; 17 gakusei.engl = 78; 18 19 printf("Name:\t\t%s\n", gakusei.name); 20 printf("Mathmatics:\t%d\n", gakusei.math); 21 printf("English:\t%d\n", gakusei.engl); 22 23 return 0; 24 }
Name: Yamamda Masashi Mathmatics: 92 English: 78