关于VS2013下inet_ntoa函数不能使用的问题

原创 2015年11月17日 16:00:30

突然发现在VS2013,64位的Windows系统中不能再使用老旧函数inet_addr(),inet_ntoa()等了。。

例如使用inet_ntoa()时,会报如下错误提示:

错误 1 error C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings d:\opencv program\tcpserver\tcpserver\server.cpp 31 1 TCPServer


对于该问题的较稳妥的解决方案如下:(该解决方案只针对windows,64位,vs2013)

在程序开始添加头文件:

      #include<WS2tcpip.h>


对于: inet_ntoa(addr2.sin_addr);

将其等价替换为

char sendBuf[20] = {'\0'};
inet_ntop(AF_INET,(void*)&addr2.sin_addr,sendBuf,16);


对于: 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);

system函数的原理和调用方法

原文地址:http://blog.sina.com.cn/s/blog_7708265a01010luz.html
  • u012751064
  • u012751064
  • 2014年09月02日 10:36
  • 2231

VS2013编译的用c++写的win32程序兼容性问题

最近在用VS2013写程序,把编译好的exe在别人的电脑上运行就会出现缺少msvcp文件不能运行的情况。在网上搜了一下,问题原因如下: C/C++程序运行时需要标准库的支持,Windows下为msv...
  • u012411003
  • u012411003
  • 2014年03月26日 17:18
  • 2274

ORACLE:SELECT语句里调用函数使用DML语句进行UPDATE/INSERT/DELETE操作

需求:公司一系统升级,要维护的数据库表中已有数据,该表没有序列、触发器等。此表要直接插入一些数据,插入的数据为了和以前的数据兼容(就是一样)。该表主键的生成以前是在代码中分两步进行的,即查询、更新(现...
  • damoluomu
  • damoluomu
  • 2014年01月17日 11:04
  • 1925

socket 编程下 inet_ntoa() 函数的使用与注意事项

函数声明:char *inet_ntoa (struct in_addr);   返回点分十进制的字符串在静态内存中的指针。   所在头文件:   //end linux 下 ...
  • a4150902
  • a4150902
  • 2012年04月01日 17:25
  • 18885

IP地址转换函数--inet_addr和inet_ntoa使用笔记

【inet_addr.c测试代码】 #include #include #include #include #include int main(int aargc, char* arg...
  • wangzhong1979
  • wangzhong1979
  • 2014年04月01日 18:25
  • 642

关于inet_ntoa函数的思考

#include #include #include #include #include #include void main() { struct in_addr addr1...
  • u014338577
  • u014338577
  • 2016年04月23日 17:32
  • 246

inet_ntoa问题记录

今天在写代码时遇到一个问题并于在一个函数传递参数时连续调用inet_ntoa时出现的,下面是问题的模拟代码: 16 char ip_addr1[]= "192.168....
  • sahusoft
  • sahusoft
  • 2012年05月10日 23:31
  • 954

关于 inet_ntoa函数

关于 inet_ntoa函数 标签: 网络编程 2016-09-01 11:57 13人阅读 评论(0) 收藏 举报  分类: 网络编程(5)  版权声明...
  • jfkidear
  • jfkidear
  • 2016年10月18日 23:03
  • 390

关于 inet_ntoa函数

函数声明:char *inet_ntoa (struct in_addr);   返回点分十进制的字符串在静态内存中的指针。 linux下:所在头文件:include “stdafx.h”inc...
  • djb100316878
  • djb100316878
  • 2016年09月01日 11:57
  • 665

inet_ntoa 函数

函数功能:将网络地址转换成“.”点隔的字符串格式。 //转换为ip地址;所需库: winsock.h //C++; winsock.aps //Delphi;inet_addr函数处理IP地址需要注意...
  • god00
  • god00
  • 2011年03月06日 09:54
  • 690
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于VS2013下inet_ntoa函数不能使用的问题
举报原因:
原因补充:

(最多只允许输入30个字)