zoukankan      html  css  js  c++  java
  • error LNK2019: 无法解析的外部符号……

    在VS中开发程序的时候遇到一个问题,应该算是比较常见,所以记录下。

    在编译程序的时候遇到一个错误,大致提示如下:

    “error LNK2019: 无法解析的外部符号……”

    遇到这个错误一般是因为存在以下三种情况:

    1、引用别人编译好的库,这个时候一般是引入头文件后,没有将lib文件导进工程中,所以需要在VS的工程属性设置中将lib文件加到工程里;

    2、自己写的.h/.cpp文件,但是没有将.h/.cpp加到工程中,而是在某些其他.h/.cpp文件中包含了头文件,这个时候就需要右键工程,添加现有项,将包含的.h/.cpp都加到工程中;

    3、第三种是自己写的.h/.c文件,也加到工程里了,但是还是报错了,注意这里是.h/.c,而我们的工程里是cpp来调用,这个时候是C++和C混编了,虽然编译器是按照C的规则来编译.h/.c的文件,但是链接器还是按照C++的规则去查找函数名,就会出现找不到的情况,所以需要将在头文件函数声明的时候添加C语言的提示:

    #ifdef __cplusplus
    extern "C" 
    {
        void myFunction(void);  //这里写函数声明
    }
    #endif

    楚人有涉江者,其剑自舟中坠于水。遽契其舟,曰:“是吾剑之所从坠。”舟止,从其所契者入水求之。舟已行矣,而剑不行,求剑若此,不亦惑乎!

    上善若水,为而不争。
  • 相关阅读:
    S02_CH09_UART串口中断实验
    S02_CH08_ ZYNQ 定时器中断实验
    S02_CH07_ ZYNQ PL中断请求
    S02_CH06_XADC实验
    S02_CH05_UBOOT实验Enter a post title
    S02_CH04_User_IP实验Enter a post title
    S02_CH03_EMIO实验Enter a post title
    S02_CH02_MIO实验Enter a post title
    S02_CH01_Hello World实验
    bzoj4868 [Shoi2017]期末考试
  • 原文地址:https://www.cnblogs.com/Bearoom/p/11721745.html
Copyright © 2011-2022 走看看