首页 > 代码库 > Objective C 四舍五入,float处理

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/