飘遥的Blog

C/C++/.NET
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

四个字节整型转换为IP格式

Posted on 2009-04-28 00:00  Zzx飘遥  阅读(1319)  评论(2编辑  收藏  举报
常规的四个字节整型转换为IP格式比较麻烦,用非托管的方式及一点小窍门,转换实现会变得非常的简单,代码如下:
static unsafe string ConvertIP(int i)
{
    
byte* b = (byte*)&i;

    
return string.Format("{0}.{1}.{2}.{3}", *b, *(b + 1), *(b + 2), *(b + 3));
}

调用ConvertIP(723830963),结果为:179.200.36.43

原理:参数i保存在栈上,占连续的四个字节;byte占一个字节。让byte指针指向i的起始地址,则指针指向的连续的四个字节都是i的内存空间,取出每个字节的内容转换为十进制然后格式化为IP地址格式即可。