C4996: 'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS

错误:C4996: 'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings

在vs2017 下socket编程时会出现如题的错误,错误的原因在于从VS2013版本以上开始支持新的函数,使用旧的函数会报错。

这里推荐使用新的函数替换老的函数。

解决方法:

1.可以修改VS配置,使其支持老的函数

把SDL检查关闭

C4996: 'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS_第1张图片

2.使用推荐的新函数

这种方式值得推荐,紧跟时代潮流么

在使用新函数时需要添加

#include 头文件

新函数的使用方法如下:

inet_pton(AF_INET, "127.0.0.1", &sockAddr.sin_addr.s_addr);//vs2013版本以上使用新的函数转换IP地址

//InetPton(AF_INET, "127.0.0.1", &sockAddr.sin_addr.s_addr);

//sockAddr.sin_addr.s_addr = inet_addr("127.0.0.1");

 

你可能感兴趣的:(网络编程,windows,c/c++)