C言語に関する質問です。
環境はlinuxのCentos6です。
ある引数Aがあり、その引数に値が入力されたかどうかの判定にnan(isnan)を使うことを考えています。
この方法が問題があるかどうか、またはより良い方法があるか教えてください。
以下に簡単な例を書きます。
ファイルとして、
・main.c
・parameter.txt
→パラメータの値が入っている(今回はa,bとする)
があるとします。
内容としてはa+bの足し算です。
parameter.txtにa,bの値が書いてあるのでそれを読み取ります。
しかし、aの引数を受けた場合は引数の値を優先して足し算に用いる、
という内容です。
色々省略して書いていますがご了承下さい。
#include 色々
int main(int argc, char **argv){
double a;
double arg_a;
int b;
int sum;
FP *fp;
//parameter.txtの読み取り
fopen=(fp,"parameta.txt", "r")
a = 1行目;
b = 2行目;
fclose(fp)
//引数の受け取り
arg_a = a;
他にも多くの引数があるとする。
if([もし引数があったら]){
a = arg_a;
}else{
何もしない
}
sum = a + b;
printf("sum=%lf\n", sum);
return 0;
}
引数を受け取ったかどうかの判定として、
1.arg_a用のflagを用意して、flagに1を代入する。
ことが一般的なのかと思っています。
今回考えていることは、
2.arg_a = nan(NULL)を最初に代入しておき、if文でisnan(arg_a)を用いる。
という方法です。
1番の方法だと引数が増えてしまい、複数個になった場合煩雑になるかなと
思い、敬遠しています。
2番の方法が問題があるかどうか、またはより良い方法があれば教えてください。
よろしくお願いします。