私は C でコンピューター シミュレーションをコーディングしたいと考えています。以下のベストプラクティスについての提案が必要です。
コンピューター シミュレーションは、多くのパラメーターに基づいています。これらのパラメータの値を指定する最良の方法は何ですか? 変数として指定するか、#define
マクロを使用して値を設定する必要があります。
たとえば、私はできる
int numpeople = 100;
また、
#define numpeople 100
どちらがより良い習慣ですか、それとも問題ではありませんか? シミュレーション内の特定の配列の長さは、パラメーターによって異なります。変数アプローチを使用してパラメーター値を指定すると、それを使用して長さ配列を指定することはできません。
例えば、
// This is invalid.
int numpeople = 10;
int ids[numpeople];
この場合、私には選択の余地がなく、使用する必要があると思いますか?
#define numpeople 100
int ids[numpeople];
または別のより良いアプローチがあります。
最後に、どの方法でパラメーターを定義するにしても、パラメーターの可能な値を 1 か所にリストし、可能な値ごとにシミュレーションを実行したいと思います。つまり、 は
parameter1
値 100、200、300 を取ることができ、値5、25、50 を取ることができるとしparameter2
ます。
parameter1
最初に、値 100 を取り、値 5 を取るシミュレーションparameter2
を実行したいと思います。次に、parameter1
値 100 をparameter2
取り、値 25 を取る...など、これらの値で形成できる 9 つの組み合わせすべてについて実行します。 . シミュレーションが完了するたびに手動で組み合わせを変更する必要がないようにしたいと思います。すべての組み合わせを何らかの形でリストし (この組み合わせに使用するデータ構造の推奨事項を求めています)、コードを一度に 1 つずつ読み取る方法はありますか。これが、実行時にパラメーターの値を設定する方法です。
これを行う方法はおそらく 1 つではありません。しかし、あなたが良いと思う方法でこれを行うことができれば幸いです。
さらに説明が必要な場合はお知らせください。
これを読んでくれてありがとう。