私はダブルを持っています:
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もご覧ください。