【问题标题】:C function **ntohl** gives linker error (unresolved externals)C 函数 **ntohl** 给出链接器错误(未解决的外部问题)
【发布时间】:2011-07-18 08:07:43
【问题描述】:

函数 ntohl 给我一个链接器错误:

error LNK2001: unresolved external symbol _ntohl@4
fatal error LNK1120: 1 unresolved externals

我已经包含了

#include <winsock.h>

这有什么具体原因吗? (或者这个功能可以很容易地手动完成?)

【问题讨论】:

    标签: c++ windows linker winsock


    【解决方案1】:

    你需要链接Ws2_32.lib

    参见the MSDN documentation for ntohl,上面写着“库:Ws2_32.lib”。

    【讨论】:

    • 谢谢你,这对我有帮助
    【解决方案2】:

    我也遇到了类似的问题,我正在查看项目设置、链接器设置等,试图找出如何引用 Ws2_32.lib 并想知道为什么 Windows 库没有通过 Visual Studio 中的默认设置链接。

    我终于看到了这篇 Windows 文章 https://docs.microsoft.com/en-us/windows/win32/winsock/creating-a-basic-winsock-application,发现我可以通过一个 pragma 语句来解决问题

    #pragma comment(lib, "Ws2_32.lib")
    

    将此添加到我的标题中修复了链接问题。

    【讨论】:

      猜你喜欢
      • 2014-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-15
      • 2012-03-05
      • 2021-04-15
      • 2015-11-14
      • 1970-01-01
      相关资源
      最近更新 更多