
2.函数的原型:int abs (int j)
3.函数说明:abs()用来计算参数j 的绝对值,然后将结果返回。
4.返回值:返回参数j 的绝对值结果。
5.关于abs函简老返数的实现:
正数的补码和原码相同;负数的补码是:补码=~(其正数的)原码+1。因此如果是负数求绝对值可以:(绝对值)原码=~(补码-1)
int _abs(signed int i)
{
if (i<0)
return ~(--i)
return i
}
(2)带if分支(判断分支)的传统想法:
正数拦饥保持原样,负数取反
int _abs(singed int p)
{
return p>0?p:-p
}
(3)不带if分支(判断分支)的位运算:
int __cdecl _abs(signed int i)
{
return ((i >>31) ^ i) - (i >>31)
}
VB编程中的闭裤“Abs”是一个取绝对值轿帆简轿世的函数。ABS(34)=34
ABS(-34)=34
ABS(-234.678)=234.678
ABS(0)=0
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)