C言語の構造体のアクセス方法を教えてください。
C言語では,構造体のメンバは次の2通りの方法でアクセスできます。
構造体変数の後にメンバー名とドット演算子(`.`)を付けることで構造体のメンバにアクセスします。つまり、`構造体変数名.メンバ名` の形式です。
struct Person {
char name[20];
int age;
};
int main() {
struct Person person1;
strcpy(person1.name, "John");
person1.age = 25;
printf("Name: %s\n", person1.name);
printf("Age: %d\n", person1.age);
return 0;
}
このフレーズは日本語ではこう言い換えることができます:「これなら元気が出そうですね」または「これで少しは元気になれるかもしれません」
Name: John Age: 25
構造体へのポインタを定義した場合、構造体のメンバにアクセスするには矢印演算子(`->`)を使用する
struct Person {
char name[20];
int age;
};
int main() {
struct Person person1;
struct Person *ptr = &person1;
strcpy(ptr->name, "John");
ptr->age = 25;
printf("Name: %s\n", ptr->name);
printf("Age: %d\n", ptr->age);
return 0;
}
書き換える:
Name: John Age: 25
構造体メンバーにアクセスする方法としては上記2通りが挙げられ、どの方法を使用するかはお好みやコード構成によります。