整数与IP地址间的转换【牛客网】

题意理解

给出一个ip和整数,分别转换成整数和ip,转换规则是ip每个字段转换成8为二进制数,再拼成32位的二进制数。

问题分析

ip转整数,按.取各字段字符串,转化为整数,再按照a*2^24+b*2^16+c*2^8+d公式计算整数。

整数转ip,分别整除2^24,2^16,2^8得到四个字段的整数,再拼在一起。

其他

这个问题很经典。我的方法有点点笨。另外一个思路不错,如下:

1 int>char>int>char方法读入ip字段,再用左移计算整数

2 整数用&与操作分别取最高8位,中间两个8位,最后8位,再移位24,16,8,得到各字段值。

链接

扫描二维码关注公众号,回复: 4909847 查看本文章

https://github.com/xierensong/learngit/blob/master/ncode/7/7.cpp

猜你喜欢

转载自blog.csdn.net/xiexie1357/article/details/85319109