Objective C 四舍五入,float处理

NSLog(@"平方:%.f", pow(3,2) ); //result 9

NSLog(@"上舍入:%.f", ceil(3.000000000001)); //result 4

NSLog(@"四舍五入:%.f",round(3.30));//result 3

NSLog(@"下舍入:%0.f",floor(232.90));//result 232

NSLog(@"取最小的值:%0.02f",fmin(3.22, 22.22));//result 3.22

NSLog(@"取最大的值:%0.02f",fmax(3.22,22.34));//result 22.34

NSLog(@"绝对值:%0.f",fabs(-10.00));//result 10

这里有一个小的技巧:

1:假如3.321想四舍五入到3.32也就是小数点的后两位,那么可以这样做

NSLog(@"%0.02f",round(3.321*100)/100);//result 3.21

NSLog(@"%0.02f",round(3.321));// result 3.00

打印出来的结果是不一样的。

在objective-c作为ANSIC的扩展,使用c标准库中的头文件<math.h>中定义的一些数学常量宏和一些数学函数进行基本操作。

数学常量:

#define M_E 2.71828182845904523536028747135266250 // e

#define M_LOG2E 1.44269504088896340735992468100189214 // log 2e

#define M_LOG10E 0.434294481903251827651128918916605082 // log 10e

#define M_LN2 0.693147180559945309417232121458176568 // log e2

#define M_LN10 2.30258509299404568401799145468436421 // log e10

#define M_PI 3.14159265358979323846264338327950288 // pi

#define M_PI_2 1.57079632679489661923132169163975144 // pi/2

#define M_PI_4 0.785398163397448309615660845819875721 // pi/4

#define M_1_PI 0.318309886183790671537767526745028724 // 1/pi

#define M_2_PI 0.636619772367581343075535053490057448 // 2/pi

#define M_2_SQRTPI 1.12837916709551257389615890312154517 // 2/sqrt(pi)

#define M_SQRT2 1.41421356237309504880168872420969808 // sqrt(2)

#define M_SQRT1_2 0.707106781186547524400844362104849039 // 1/sqrt(2)

转自http://blog.163.com/lzb4319@126/blog/static/7255470020123185505844/