Lua ip to int 和 int to ip

Stella981
• 阅读 805
function _M.ipToInt( str )
    local num = 0
    if str and type(str)=="string" then
        local o1,o2,o3,o4 = str:match("(%d+)%.(%d+)%.(%d+)%.(%d+)" )
        num = 2^24*o1 + 2^16*o2 + 2^8*o3 + o4
    end
    return num
end
-- inter to ip
function _M.intToIp( n )
    if n then
        n = tonumber(n)
        local n1 = math.floor(n / (2^24)) 
        local n2 = math.floor((n - n1*(2^24)) / (2^16))
        local n3 = math.floor((n - n1*(2^24) - n2*(2^16)) / (2^8))
        local n4 = math.floor((n - n1*(2^24) - n2*(2^16) - n3*(2^8)))
        return n1.."."..n2.."."..n3.."."..n4 
    end
    return "0.0.0.0"
end
点赞
收藏
评论区
推荐文章
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
java判断字符串是否为数字或中文或字母
1.判断字符串是否仅为数字:1用JAVA自带的函数public static boolean isNumeric(String str){  for (int i  str.length();i0;){      if (!Character.isDigit(str.charAt(i))){
Wesley13 Wesley13
3年前
java字符串比较和jdkequals源码分析
 package com.cnse.demo;/  比较两个字符串相等 /public class StringTest { public static void main(String args) {  int checkLength  0;  String str
Wesley13 Wesley13
3年前
IP地址的正则表达式
finalStringREGX_IP"((2505|204\\d|1\\d{2}|19\\d|\\d)\\.){3}(2505|204\\d|1\\d{2}|19\\d|\\d)";在过滤json数据中的ip,需要判断异常ip值,我的写法:^"{2}\b((2505|204
Stella981 Stella981
3年前
Cppcheck简单测评
测评代码如下:include <cstdioinclude <stringint main(void){ // 多了或者少了格式化参数 ::printf("%d%d%d\n", int(1), int(2)); ::printf("%d%d%d\n", int(1), int(2
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Stella981 Stella981
3年前
Python基础之格式化输出、运算符、数字与布尔值互换以及while...else
python是一天学一点,就这样零零碎碎……格式化输出  %是占位符,%s是字符串格式,%d整数格式,%f是浮点数格式1nameinput('输入姓名')2ageinput('输入年龄')3str'年龄:%d,姓名:%s'%(int(age),name)4str
Wesley13 Wesley13
3年前
C# 事件与委托
一些小概念,防止自己太久不用忘记了事件委托:Action<int,int,string….(maxnumberof16parameters)a永远没有返回值,最多16个泛型输入参数e.g.:StaticvoidPrintStr(stringstr){   Console.WriteLine(str);
Wesley13 Wesley13
3年前
D1
1\.数据结构  1.1线性结构  (1)最常用的数据结构,特点是数据元素之间存在一对一的线性关系  (2)有两种不同的存储结构,即顺序存储结构和链式存储结构    顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的    链式存储的线性表称为链表,链表中的存储元素不一定是连续的,元素节点中存放数据元素以及相邻元素的地址信息
Wesley13 Wesley13
3年前
34.TCP取样器
阅读文本大概需要3分钟。1、TCP取样器的作用   TCP取样器作用就是通过TCP/IP协议来连接服务器,然后发送数据和接收数据。2、TCP取样器详解!(https://oscimg.oschina.net/oscnet/32a9b19ba1db00f321d22a0f33bcfb68a0d.png)TCPClien