首先我们来看看 (int) 强制类型转换:
#include <stdio.h> #include <stdlib.h> int main(){ int a = (int)(-1.9); int b = (int)(1.9); printf("%d\n%d\n", a, b); return 0; }
int 是将数值绝对值的小数部分去掉,再取相同的正负号。所以依据输入浮点数的正负性。能够得到四舍五入函数:
int func(float x) { if(x > 0.0) return (int)(x + 0.5); else return (int)(x - 0.5); }