私はダブルを持っています:
double d = 25.342;
どうすれば25
値に変換できますか?
もしそうなら、-12.46
私は取得したいです-13
。
int i = (int)floor(25.342);
int i = (int)floor(25.342);
これにより、12.99999が12に変換されることに注意してください。
参照:
ここで、xは25.342です。
int i = x> = 0?(int)(x + 0.5):( int)(x-0.5)
#include <math.h>
#include <stdio.h>
int main(){
double d = 25.342;
double e = -12.99;
printf("%d\n",(int)round(d)); // 25
printf("%d\n",(int)round(e)); // -13
return 0;
}
stdint.hもご覧ください。