首页 > 其他 > 详细

迁移到64位: error: unknown type name 'IP_ADAPTER_ADDRESSES'; did you mean 'IP_ADAPTER_ORDER_MAP'?

时间:2021-01-03 10:41:22      阅读:37      评论:0      收藏:0      [点我收藏+]

编译时,报错:

error: unknown type name ‘IP_ADAPTER_ADDRESSES‘; did you mean ‘IP_ADAPTER_ORDER_MAP‘?

这是什么情况?搜索吧,找到这篇:https://stackoverflow.com/questions/50613715/error-when-i-use-ip-adapter-addresses

其中有这么一段:

尝试更换的顺序windows.h和winsock2.h。 
iptypes.h仅在winsock2.h使用时声明受影响的类型和常量,但windows.h使用winsock.h代替,这会干扰winsock2.h。
如果winsock2.h在此之前添加windows.h,winsock2.h则将禁用winsock.h

其实并没有完全看明白。

然后查看了 winsock2.h 的定义,其中看到一句:

#ifndef _WINSOCK2API_
#define _WINSOCK2API_

#include <_mingw_unicode.h>

#ifndef _WINSOCKAPI_
#define _WINSOCKAPI_
#else
#warning Please include winsock2.h before windows.h   <--- 注意这一行
#endif

意思是,在 #include <...> 的时候,应该:

#include <winsock2.h>
#include <Iphlpapi.h>
#include <Windows.h>

我再看我的代码,原本是这样写的:

#include <Windows.h>
#include <winsock2.h>
#include <Iphlpapi.h>

也就是把顺序调一下。

 

迁移到64位: error: unknown type name 'IP_ADAPTER_ADDRESSES'; did you mean 'IP_ADAPTER_ORDER_MAP'?

原文:https://www.cnblogs.com/personnel/p/14224855.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!