今回は、構造体を配列に格納する例をみていこう。
構造体も「int」や「char」などと同じく「型」の一つなので、配列に格納できる。
プログラムコードで確認してみよう。
#include <stdio.h>
typedef struct Person
{
char name[20];
int age;
} Person;
int main(void)
{
Person p[] = { { "ISONOKAMI TAO",17},{"ITSUKISHIMA SAHORI",18}};
for (int i = 0; i < 2; i++) {
printf("名前:%s,年齢:%d\n",p[i].name,p[i].age);
}
}
実行結果
名前:ISONOKAMI TAO,年齢:17
名前:ITSUKISHIMA SAHORI,年齢:18
なお、次の記述で、宣言のときに初期化できる。
Person p[] = { { "ISONOKAMI TAO",17},{"ITSUKISHIMA SAHORI",18}};
これで、 { “ISONOKAMI TAO”,17} と {“ITSUKISHIMA SAHORI”,18} によって初期化されたPerson型の値が2つ配列に代入される。
それぞれのメンバの値には、p[0].name,p[0].age と p[1].name,p[1].age という記述でアクセスできる。
(参考文献)
コメント