構造体の応用
メニューを表示するにはスワイプしてください
プログラムを設計する際、管理するデータの表現方法の選択は非常に重要なステップです。
例えば、原子内の中性子数を自動計算するシンプルなプログラムを作成したい場合を考えます。
ここで、N は中性子数、A は元素の原子質量、Z は陽子数を表します。C言語で中性子数を計算する関数は次のようになります。
int NeutronCount(float A, int Z)
{
int N = A - Z;
return N;
}
この関数を使用するには、各化学元素の特性ごとに大量の変数を宣言し、混乱しないようにする必要があります。
計算は自動化されていますが、利便性や速度の面で特に有利になっていません。化学元素のパラメータを毎回入力し、結果をどこかに書き留めるなど、非常に不便です。
char firstElementName[3];
int firstElementAtomicNum;
int firstElementValency;
double firstElementMass;
char secondElementName[3];
int secondElementAtomicNum;
int secondElementValency;
double secondElementMass;
char thirdElementName[3];
int thirdElementAtomicNum;
int thirdElementValency;
double thirdElementMass;
他の118の化学元素についても同様です。
「お気に入りの言語であるCに、複雑なデータを記述し操作する仕組みがあればいいのに」と考えました。
今後、どの化学元素も記述できる構造体を、例えばシリコン("Si")を例に視覚的に表現してみましょう:
非常に便利です。複数の個別変数を作成する代わりに、すべてのフィールドを保持する構造体を定義できます。C言語には、これに必要なすべての機能がすでに備わっています。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 2
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 1. 章 2