Advertisement

integer to IPv4 conversion in C++

阅读量:

题目:
将数值16843009以及另一个未明确的数字转换为对应的IPv4地址格式。例如:
16843009对应的IPv4地址形式为 1.1.1.1
另一个未被记住的数值对应IPv4地址格式为 192.xxx.xxx.xxx

思路:
IPv4地址是基于二进制编码进行转换的,因此首先需要将整数转化为二进制表示形式,再将其拆分为相应的IPv4字段。具体步骤如下:

  1. 首先将数值16843009转换为二进制表达方式,得到 00000001 00000001 00000001 00000001;
  2. 接着将上述二进制字符串按照每八位一组进行划分,并将其转化为十进制数值,如:
    二进制序列:
    0000001 | | |||||||||
    对应的十进制数值分别为:
    1   |  |  |  1

函数代码:

复制代码
 void intTransformIPV4(int num) {

    
 	stack<int> s;
    
 	int i, d;
    
 	i = 0;
    
 	/*
    
 	第一步
    
 	转换成二进制
    
 		如:16843009对应的二进制为 00000001 00000001 00000001 00000001

全部评论 (0)

还没有任何评论哟~