运营商优先?
String ntohl(int i)
{
int i1 = i % (256);
int i2 = (i %(65536))/(256);
int i3 = (i %(16777216))/(65536);
int i4 = (i)/(16777216);
int i5 = i % (2^8);
int i6 = (i %(2^16))/(2^8);
int i7 = (i %(2^24))/(2^16);
int i8 = i/(2^24);
Log.d(TAG, "i:"+i+" "+i1+"."+i2+"."+i3+"."+i4);
Log.d(TAG, "i:"+i+" "+i5+"."+i6+"."+i7+"."+i8);
return ""+i1+"."+i2+"."+i3+"."+i4;
}
您好,运营商优先?
我有一个方法上面列出它返回一个IPv4地址。我已经完成了计算,但是i5 i6 i7 i8不像i1 i2 i3 i4。
使用模数可以返回您可能不期望的负数。尝试使用以下模式
int i0 = i & 0xFF;
int i1 = (i >> 8) & 0xFF;
int i2 = (i >> 16) & 0xFF;
int i3 = (i >> 24) & 0xFF;
运算符^表示Java中的Xor,但不是电源。 您应该使用Math.exp(double a)
Math.pow效率非常低。使用移位。 – 2012-07-31 07:40:03
你说得对。我忘记他正在处理修复号码。 – waitingkuo 2012-07-31 07:41:59
...和两个幂。 +1关于'^'顺便说一句。 – 2012-07-31 07:44:40
谢谢!我忘了这是Java大声笑 – wallyjue 2012-07-31 07:49:42
它在C,C++,C#,D和基于C语言的许多其他语言上都是一样的;); – 2012-07-31 07:51:46