私のプログラムでは、常に引数よりも近い最も近い整数値を取得する必要があります。そのため私はC ceil()
機能を使用しています。 問題は常に私が期待していない数値を返すことです。C ceil()関数は奇妙な数値を返します
など。以前の私のプログラムで
double num = 1/25.0; // num is correctly 0.04(some 0s)1
ceil(num); // ceil returns 1018
私はので、私は多分それはそれとは何かを持っていると思ったし、私はそれをコメントアウトが、それは助けていない、srand(time(NULL))
を呼んでいます。
ceil(0.040000001)
のような関数を呼び出すと、1018も返されます。 ドキュメントから引数を取って関数を呼び出すときでさえ、この奇妙な動作をします。
プログラム例
//#include <stdio.h>
//#include <stdlib.h>
int main() {
//double var = 1/25.0;
double num1 = ceil(1.6); // returns 1023
return 0;
}
私は[mcve] – tkausl
が必要です*どのように戻り値をチェックしますか? – UnholySheep
math.hが含まれていますか?正しいプロトタイプがなければ、Cは 'int ceil(int);と仮定します。 –