EDIT:これは重複した質問としてマークされましたが、リンクされた質問は私が求めているものではありません。私は構造体の配列を関数に渡す方法を知っています。私はその配列内の要素からメンバデータを関数に渡す方法について助けを求めています。構造体の配列からメンバデータを関数に渡すにはどうすればよいですか?
私は私が学生の情報を追跡するための構造を作成するために仕事を課されたC++での宿題を持っている:
struct Student {
string name;
double idNumber;
double currentGrade;
double lastGrade;
double overallGPA;
};
ユーザーは、彼らがデータを入力されることを学生の数を入力するように要求されますこの入力に基づいて構造体の配列を作成します。その後、プログラムは各要素をループし、ユーザーに構造の各インスタンスのメンバーデータを入力するように促します。
すべてのデータが入力されると、ユーザーが選択したメンバー変数に基づいて配列を並べ替える作業が行われます。私は名前変数で並べ替えるためのソート関数を書いていますが、二重変数に基づいて配列をソートするための一般的な関数を書いていますが、4つの二重変数すべてに対してどのように関数を使うことはできません。
void doubleSort(Student arr[], int arrSize) {
// bubble sort: high -> low
Student temp;
for(int i = 0; i < arrSize; i++) {
for(int j = 0; j < arrSize; j++) {
if(arr[j] < arr[i]) {
// swap values
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
しかし、個々のメンバ変数のソート機能を書き込まないようにするために、arguement、すなわちidNumberとして会員データを渡す:基本的に
、私はこの機能を使用することができます方法はありますか?
これは重複しているようには見えませんが、多分質問に異なる言い方をすることができます。私はここでのOPは、関数内のパラメータに基づいて構造体のいくつかのフィールドにアクセスしたいと考えています。配列の受け渡しはすでに解決されています。 – MayeulC
https://stackoverflow.com/questions/14418595/c-method-for-iterating-through-a-structs-members-like-an-array – MayeulC
を修正してください。私の言い回しはあまり良くありませんでしたが、ソート関数内の構造体のフィールドにアクセスしようとしています。 – Austin