学习
实践
活动
工具
TVP
写文章

vs2015中inet_ntoainet_addr不能正常使用的解决方法

在学习c++ MFC SOCKET开发中遇到了如下的报错:     error C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or Step 1:在头部添加头文件 #include<WS2tcpip.h> Step 2:将inet_ntoa(clientAddr.sin_addr);替换为 char sendBuf[20] = {  '\0' }; inet_ntop(AF_INET, (void*)&clientAddr.sin_addr, sendBuf, 16); Step 3:将addr.sin_addr.S_un.S_addr =inet_addr("127.0.0.1");替换为 inet_pton(AF_INET, "127.0.0.1", (void*)&addr.sin_addr.S_un.S_addr); 最后问题完美解决

7K130

socket inet_pton

inet_pton   Linux下这2个IP地址转换函数,可以在将IP地址在“点分十进制”和“整数”之间转换   而且,inet_pton和inet_ntop这2个函数能够处理ipv4和ipv6。 /inet.h>   int inet_pton(int af, const char *src, void *dst);   这个函数转换字符串到网络地址,第一个参数af是地址族,转换后存在dst中   inet_pton 是inet_addr的扩展,支持的多地址族有下列:   af = AF_INET   src为指向字符型的地址,即ASCII的地址的首地址(ddd.ddd.ddd.ddd格式的) (AF_INET, IPdotdec, (void *)&s);   printf("inet_pton: 0x%x\n", s.s_addr); // 注意得到的字节序   // 反转换   inet_ntop (AF_INET, (void *)&s, IPdotdec, 16);   printf("inet_ntop: %s\n", IPdotdec);   }

1.6K80
  • 广告
    关闭

    2022腾讯全球数字生态大会

    11月30-12月1日,邀您一起“数实创新,产业共进”!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux网络编程IPv4和IPv6的inet_addr、inet_aton、inet_pton等函数小结

    ------------ IP字符串 《——》 网络字节流 inet_addr、inet_aton、inet_ntoa 程序代码: #include <stdio.h> #include <sys/socket.h (addr1), inet_ntoa(addr2)); //注意:printf函数自右向左求值、覆盖 printf("%s/n", inet_ntoa(addr1)); //网络字节 ——》IP 字符串 printf("%s/n", inet_ntoa(addr2)); return 0; } 运行结果: [work@db-testing-com06-vm3.db01.baidu.com net]$ gcc -W -o inet_ntoa inet_ntoa.c  [work@db-testing-com06-vm3.db01.baidu.com net]$ . /inet_ntoa                                       IP1: 192.168.0.74 IP2: 211.100.21.179 Addr1: 1241557184

    3.5K30

    iOS开发 Wifi相关

    explains the "255's" // address = [NSString stringWithUTF8String:inet_ntoa ifa_dstaddr)->sin_addr)]; address = [NSString stringWithUTF8String:inet_ntoa 192.168.0.255 广播地址 NSLog(@"broadcast address--%@",[NSString stringWithUTF8String:inet_ntoa -192.168.0.100 本机地址 NSLog(@"local device ip--%@",[NSString stringWithUTF8String:inet_ntoa //--255.255.255.0 子网掩码地址 NSLog(@"netmask--%@",[NSString stringWithUTF8String:inet_ntoa

    35510

    网络字节

    inet_ntoa() 简述: 将网络地址转换成“.”点隔的字符串格式。 #include <winsock.h> char FAR* PASCAL FAR inet_ntoa( struct in_addr in); in:一个表示Internet主机地址的结构。 请注意inet_ntoa()返回的字符串存放在WINDOWS套接口实现所分配的内存中。应用程序不应假设该内存是如何分配的。在同一个线程的下一个WINDOWS套接口调用前,数据将保证是有效。 这是与inet_addr()的区别 返回值: 若无错误发生,inet_ntoa()返回一个字符指针。否则的话,返回NULL。 inet_aton() 与inet_ntoa()作用相反。

    23120

    python脚本获取服务器ip,主机名

    import socket import fcntl,struct import time def getHardware(outip,inip): sk = socket.socket(socket.AF_INET socket.SOCK_DGRAM) ##1.获取主机名 hostname = socket.gethostname() print ('主机名*****',hostname) ##获取ip, OutIp = socket.inet_ntoa fcntl.ioctl(sk.fileno(), 0x8915, struct.pack('256s', bytes(outip[:15],'utf-8')))[20:24]) InIp = socket.inet_ntoa socket.SOCK_DGRAM) ##1.获取主机名 hostname = socket.gethostname() print '主机名*****',hostname ##获取ip, OutIp = socket.inet_ntoa (fcntl.ioctl(sk.fileno(), 0x8915, struct.pack('256s', outip[:15]))[20:24]) InIp = socket.inet_ntoa(fcntl.ioctl

    68030

    获取本机IP MAC地址

    "); 30 in_addr in; 31 in.S_un.S_addr = g_dwLocalIP; 32 printf(" IP Address : %s\n",::inet_ntoa (in)); 33 34 in.S_un.S_addr = g_dwMask; 35 printf(" Subnet Mask : %s\n",::inet_ntoa(in)); 36 37 in.S_un.S_addr = g_dwGatewayIP; 38 printf(" Default Gateway:%s\n",::inet_ntoa(in)) (in)); 37 38 in.S_un.S_addr = g_dwMask; 39 printf(" Subnet Mask : %s\n",::inet_ntoa(in )); 40 41 in.S_un.S_addr = g_dwGatewayIP; 42 printf(" Default Gateway:%s\n",::inet_ntoa

    1.4K60

    老大告诉我不要用字符串存IP地址,不兴~

    MySQL提供INET ATON()和 INET NTOA()函数在这两种表示方法之间转换。    算法:第一位乘256三次方+第二位乘256二次方+第三位乘256一次方 + 第四位乘256零次方 INET_NTOA() 将数字反向转换成IP SELECT INET_ATON('127.0.0.1') | +------------------------+ 1 row in set (0.00 sec) SELECT INET_NTOA('2130706433'); +---------- +-------------------------+ 1 row in set (0.02 sec)   如果是 IPv6地址的话,可以使用函数 INET6_ATON() 和 INET6_NTOA() 但整数存储需要使用INET_ATON、INET_NTOA等特定函数处理,可读性查,函数也会消耗额外CPU,经检验发现CPU开支微乎其微。

    13730

    python dpkt解析流量包

    buf) in pcap: try: # 获取以太网部分数据 eth = dpkt.ethernet.Ethernet(buf) # 获取IP层数据 ip = eth.data # 把存储在inet_ntoa 中的IP地址转换成一个字符串 src = socket.inet_ntoa(ip.src) dst = socket.inet_ntoa(ip.dst) print '[+] Src: ' + src

    1.6K30

    面试官:如果要存 ip 地址,用什么数据类型比较好?

    ,以及把整数格式的IP转换成字符串的INET_NTOA。 如下所示: mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') -+ | 3232235521 | +--------------------------+ 1 row in set (0.00 sec) mysql> select inet_ntoa (3232235521); +-----------------------+ | inet_ntoa(3232235521) | +-----------------------+ | 192.168.0.1 _ATON和INET6_NTOA

    27440

    原始套接字和流量嗅探

    self.src_address = socket.inet_ntoa(struct.pack("<L", self.src)) self.dst_address = socket.inet_ntoa (struct.pack("<L",self.src)) self.dst_address = socket.inet_ntoa(struct.pack("<L",self.dst)) 为 ("src (struct.pack("@I", self.src)) self.dst_address = socket.inet_ntoa(struct.pack("@I", self.dst) self.src_address = socket.inet_ntoa(struct.pack("<L", self.src)) self.dst_address = socket.inet_ntoa self.src_address = socket.inet_ntoa(struct.pack("<L", self.src)) self.dst_address = socket.inet_ntoa

    10420

    iOS开发中WiFi相关功能总结

    explains the "255's" // address = [NSString stringWithUTF8String:inet_ntoa ifa_dstaddr)->sin_addr)]; address = [NSString stringWithUTF8String:inet_ntoa 192.168.1.255 广播地址 NSLog(@"broadcast address--%@",[NSString stringWithUTF8String:inet_ntoa -192.168.1.106 本机地址 NSLog(@"local device ip--%@",[NSString stringWithUTF8String:inet_ntoa ->ifa_name] isEqualToString:@"en0"]) { address = [NSString stringWithUTF8String:inet_ntoa

    89340

    如果要存 IP 地址,用什么数据类型比较好?大部人都会答错!

    ,以及把整数格式的IP转换成字符串的 INET_NTOA。 如下所示: mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') -+ | 3232235521 | +--------------------------+ 1 row in set (0.00 sec) mysql> select inet_ntoa (3232235521); +-----------------------+ | inet_ntoa(3232235521) | +-----------------------+ | 192.168.0.1 _ATON和 INET6_NTOA

    13920

    面试官:如果要存ip地址,用什么数据类型比较好?

    ,以及把整数格式的IP转换成字符串的INET_NTOA。 如下所示: mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') ---------------+ | 3232235521 | +--------------------------+ 1 row in set (0.00 sec) mysql> select inet_ntoa (3232235521); +-----------------------+ | inet_ntoa(3232235521) | +-----------------------+ | 192.168.0.1 _ATON和INET6_NTOA

    33530

    面试官:如果要存ip地址,用什么数据类型比较好

    ,以及把整数格式的IP转换成字符串的INET_NTOA。 如下所示: mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') -+ | 3232235521 | +--------------------------+ 1 row in set (0.00 sec) mysql> select inet_ntoa (3232235521); +-----------------------+ | inet_ntoa(3232235521) | +-----------------------+ | 192.168.0.1 _ATON和INET6_NTOA

    14210

    python 检查是否存在ddos攻击

    pcap): for (ts, buf) in pcap: try: eth = dpkt.ethernet.Ethernet(buf) ip = eth.data src = socket.inet_ntoa pcap): for (ts, buf) in pcap: try: eth = dpkt.ethernet.Ethernet(buf) ip = eth.data src = socket.inet_ntoa (ip.src) dst = socket.inet_ntoa(ip.dst) tcp = ip.data dport = tcp.dport sport = tcp.sport # 若目标端口为 = {} for (ts, buf) in pcap: try: eth = dpkt.ethernet.Ethernet(buf) ip = eth.data src = socket.inet_ntoa (ip.src) dst = socket.inet_ntoa(ip.dst) tcp = ip.data dport = tcp.dport # 累计各个src地址对目标地址80端口访问的次数

    70030

    MySQL - 库表设计之IP和TIMESTAMP的处理

    MySQL 数据库内置了两个 IP 相关的函数 INET_ATON()、INET_NTOA(),可以实现 IP 地址和整数的项目转换。 mysql> select INET_ATON('127.0.0.1'); +------------------------+ | INET_ATON('127.0.0.1') | +-------- ---------------+ | 2130706433 | +------------------------+ 1 row in set mysql> select INET_NTOA (2130706433); +-----------------------+ | INET_NTOA(2130706433) | +-----------------------+ | 127.0.0.1

    12310

    面试官:如果要存ip地址,用什么数据类型比较好

    ,以及把整数格式的IP转换成字符串的INET_NTOA。 如下所示: mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') -+ | 3232235521 | +--------------------------+ 1 row in set (0.00 sec) mysql> select inet_ntoa (3232235521); +-----------------------+ | inet_ntoa(3232235521) | +-----------------------+ | 192.168.0.1 _ATON和INET6_NTOA

    33730

    如果要存 IP 地址,用什么数据类型比较好?大部人都会答错!

    ,以及把整数格式的IP转换成字符串的INET_NTOA。 如下所示: mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') -+ | 3232235521 | +--------------------------+ 1 row in set (0.00 sec) mysql> select inet_ntoa (3232235521); +-----------------------+ | inet_ntoa(3232235521) | +-----------------------+ | 192.168.0.1 _ATON和INET6_NTOA

    12830

    扫码关注腾讯云开发者

    领取腾讯云代金券