コードによって設定されていない:fonctionはfile.cとであること 変数iは、関数の値を計算する非常に簡単なコードを作っ
#define MIN 0.00001
#define MAX 1
#define MAXP 10000
double func_log(double x)
{
double r=RPWN;
printf(" MAXP = %e \n",MAXP);
printf(" MIN = %e \n",MIN);
printf(" MAX = %e \n",MAX);
double y;
if (x>r || x==0) return(0.0);
else {
y = r+((r*r)/(2.*x)-x/2.)*log((1+r/x)/(r/x-1));
}
return y;
}
他のソースファイルでコンパイルされます。問題はMAXP
をその値に設定できないことです。ここで私はMIN
、MAXP
、およびMAXP
の値をプリントアウトするために頼むとき私が得るものです:
MAXP = 4.940656e-324
MIN = 1.000000e-05
MAX = 1.000000e+00
私はMAXP
ため4.940656e-324
を取得し、なぜ私は本当に理解していない、私は、このような問題があったことはありません。また、#define MAXP 10000.
と書くと、MAXP = 1.000000e+04
になります。私はgccでコンパイルしますが、誰か手掛かりがありますか?
をMAXと最大パケットはINTEGですer定数は倍精度として出力されます。幸せは選択肢の一つではありません。定義に小数点を追加します。 –
コンパイラの警告を有効にします。単純な入力ミスとしてこれを閉じるための投票。 – Lundin
@ Lundinは必ずしもタイプミスではなく、問題はOKです。初心者の場合、この動作は実際には奇妙に見えるかもしれません –