0
点赞
收藏
分享

微信扫一扫

网络编程篇2-常见错误解决


问题1:

VS2015在debug环境下面编译问题:正在从以下位置加载xxx符号

解决方法:

VS2015在debug环境下面编译问题:

不知道从什么时候起我现在只要是在debug下面编译运行的时候总是会跳出以下界面:

网络编程篇2-常见错误解决_解决方案

 

 

经过自己查找资料知道找到问题所在,解决方法按照工具-》选项》调试》符号》将右边符号服务器的勾选框去掉即可。

网络编程篇2-常见错误解决_ip地址_02

问题2:

inet_pton未定义

解决方案:

添加#include <ws2tcpip.h> 这是IP地址的转换方法

问题3:

VS2015报错C4996处理,error C4996: 'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_D

解决方案:

在vs2015中socket编程时,在编下如下代码时:
[cpp] ​​view plain​​ ​​copy​​

  1. sockaddr_in clientService;  
  2. clientService.sin_family = AF_INET;  
  3. clientService.sin_addr.s_addr = inet_addr("10.224.5.27");  
  4. clientService.sin_port = htons(7008);  

第三行会报错:

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

问题出现的原因:

在VS2013以后的版本中,增加了inet_pton()、InetPton()之类的新函数,用于IP地址在“点分十进制”和“二进制整数”之间转换,并且能够处理ipv4和ipv6。而inet_addr是老函数,高版本VS在编译时默认使用了新函数,所以会报该错误。

问题的解决:

1、用所提示的新函数代替inet_addr函数。

2、修改VS配置,告诉它我就要旧函数,修改方法:项目->属性->C/C++->常规->SDL检查,将“是”改为“否”,即可。

问题4:

This function or variable may be unsafe

解决方案:

在编译代码时出现如上错误信息,下面就介绍下如何解决This function or variable may be unsafe的问题。

​​

网络编程篇2-常见错误解决_解决方案_03

​​

方法/步骤

  1. 用VS2013打开出现错误的代码文件
    ​​​

    网络编程篇2-常见错误解决_ip地址_04

    ​​
  2. 在工程文件名处右击鼠标打开快捷菜单,找到“属性”选项,进入项目属性页面
    ​​​

    网络编程篇2-常见错误解决_ip地址_05

    ​​
  3. 项目属性页面如下图所示
    ​​​

    网络编程篇2-常见错误解决_属性页_06

    ​​
  4. 在属性页面中找到“C/C++"——”预处理器“,按下图操作单击箭头指向处的按钮
    ​​​

    网络编程篇2-常见错误解决_ip地址_07

    ​​
  5. 在下面的编辑窗口中添加一句命令:_CRT_SECURE_NO_WARNINGS
    添加完成后应用并退出
    ​​​

    网络编程篇2-常见错误解决_ip地址_08

    ​​
  6. 再次编译并运行即可正常运行。
    ​​​

    网络编程篇2-常见错误解决_属性页_09

    ​​

 

举报

相关推荐

0 条评论