Help us understand the problem. What is going on with this article?

構造体ってなんだよ

構造体ってなんであるの?

配列の役割とは?

配列一つの型の複数の変数を管理することができる。
つまり、同じ型である必要がある!

構造体は配列の上位互換

構造体複数の型の複数の変数を管理することができる。
つまり、制限がない!

ただのメンバ変数を関する構造体

#include <bits/stdc++.h>
using namespace std;

struct stu{//stu型に統一する stuは構造体名
    string name;
    int id,age;
    string e_mail;
    double GPA;
}S;//Sにメンバ変数を入れる Sは構造体変数名 

int main(){
    cin >> S.name >> S.id >> S.age >> S.e_mail >> S.GPA;
    }
}

配列化したメンバ変数を管理した構造体

#include <bits/stdc++.h>
using namespace std;

struct stu{//stu型に統一する stuは構造体名
    string name;
    int id,age;
    string e_mail;
    double GPA;
}S[100];//S配列にメンバ変数を入れる Sは構造体変数名 

int main(){
    for (int i=0; i<3; i++){
        cin >> S[i].name >> S[i].id >> S[i].age >> S[i].e_mail >> S[i].GPA;
    }
}

配列化したメンバ変数&関数を用いた構造体

#include <bits/stdc++.h>
using namespace std;

struct stu{//stu型に統一する stuは構造体名
    string name;
    int id,age;
    string e_mail;
    double GPA;
}S[100];//S配列にメンバ変数を入れる Sは構造体変数名 

void printStudent(stu A){
    cout << A.id << " " << A.GPA << endl;
}

int main(){
    int n;cin >> n;
    for (int i=0; i<n; i++){
        cin >> S[i].name >> S[i].id >> S[i].age >> S[i].e_mail >> S[i].GPA;
    }

    for (int i=0; i<n; i++) printStudent(S[i]);
}

メンバ変数にアクセスするには、構造体変数名.メンバ変数という書き方でアクセスできる!

構造体とクラスの違いは?

class はデフォルトのアクセシビリティが private
struct はデフォルトのアクセシビリティが public
https://qiita.com/pink_bangbi/items/e25302df7f4ba7fa0db4

まとめ

2つ覚えるの無理だから構造体だけ覚えるわ

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away