无法解析的外部符号

作者&投稿:剑素 (若有异议请与网页底部的电邮联系)
~

无法解析的外部符号的几个原因:

1、lib 文件未引入。

在Visual Studio中"项目->属性->连接器->常规->附加库目录"写上.lib库所在文件夹;其次,"项目->属性->连接器->输入->附加依赖项"中写上.lib库的名称。使用#pragma comment(lib, “XXX.lib”)语句添加 lib引用。

2、类方法的实现未加类标识。

如, “CTest::Connect(void) { ? }” 写成了 “Connect(void) { ? }”。

3、没有将项目需要的头文件、源文件加入项目中。

4、引用了不匹配的lib库(相当于没有引用),比如多字节字符集的程序引用了UNICODE字符集的lib。VS中“项目-属性-常规-字符集”可更改程序的字符集,Notepad++可更改源代码的字符集。比如在VS里更改程序字符集为Unicode,Notepad++里更改字符集为UTF-8。

C语言中外部符号的声明

外部符号的声明:这里的外部符号是在不同源文件下定义符号的区分源文件一假设是有外部符号的,int g_val=10;这里只有g_val的值的显示源文件二就是主要的源文件,是执行文件,这里可以不定义g_val,可以用extern来引用源文件一里的g_val的值。




...为什么编译链接的时候还是提示无法解析的外部符号?
我在vs2008环境下面遇到了这个问题 总算自己解决了 如果选择的是win32而非x64配置,对应的库目录一定要设置到x86而非x64 在win32配置下使用x64 directx 库就会出现这种情况 解决方法:假设directx目录为 C:\\Program Files (x86)\\Microsoft DirectX SDK (June 2010)\\ 则对于win32配置 项目->属性->C...

C++调用外部函数什么意思 出错后显示无法解析的外部符号
编译器没有找到Judgenum(int,double)函数的实现。请检查是不是定义了该函数但是没有实现。如果您使用了类模版,并把一个类的定义和实现写在不同的源文件中也可能导致此问题。可以尝试把类的定义和实现都写在一个源文件中。

error LNK2019: 无法解析的外部符号 _GetMappedFileNameA@1...
解决了你倒是把解决方法贴出来啊,不然其他人还是不知道啊...其实就是在 #include <psapi.h> 前加上 #define PSAPI_VERSION 2 即可

高斯消元法 c语言 vs2013 无法解析的外部符号 _main
include "stdafx.h"#include <stdio.h>#include <math.h>#define N 10void guss(float a[N][N], float b[N]) \/* 子函数高斯消去法*\/{int i, j;float u[N], y[N], q[N], x[80];u[0] = a[0][0];y[0] = b[0];for (i = 1; i<N; i++){q[i] = a[i][i...

哈弗曼程序出错原因及修改~求高手相助!~
无法解析的外部符号“symbol”代码引用了链接器无法在库和对象文件中找到的内容(如函数、变量或标签)。该错误信息之后为错误 LNK1120。可能的原因 在将托管库或 Web 服务项目从 Visual C++ 2003 升级到 Visual C++ 2005 时,\/Zl 编译器选项将添加到“命令行”属性页中。这将导致 LNK2001。请从“命令行”属性页...

C++ 子类继承模板类,调用父方法,报错Lnk2019 无法解析外部符号...
模板类的声明和定义不能分离,你需要将1.cpp中的所有内容都转移到1.h中。

win7+vs2010怎么搭建directshow sdk开发环境
1>Dialog1.obj : error LNK2001: 无法解析的外部符号 _CLSID_FilterGraph 1>Dialog1.obj : error LNK2001: 无法解析的外部符号 _IID_IGraphBuilder ...error LNK2019: 无法解析的外部符号 __imp__timeGetTime@0,该符号在函数 "public: int __thiscall CAMMsgEvent::WaitMsg(unsigned long)" (?W...

为什么C编译器可以编译,但不能执行
执行的时候需要的库未能正确找到,建议你重新安装或者在选项中指定输出、系统库的路径,或者在OPTIONS里有一项Directories,把里面的Output Directory设置成你自己的路径,然后回到Options里点击保存设置(save options)就可以了。

出现fatal error LNK1120: 1 unresolved externals
unresolvedexternals未解决的外部错误是由未声明的函数引起的,可以通过在调用位置之前声明该函数来消除该错误。正确的程序如下:Intjh(intaintb。br处理);//函数声明,消除了未解析的外部错误 Intmain(){ Inta=4,b=8,c;C=jh(a,b);因为在调用之前没有声明函数jh,所以报告了一个错误...

电脑里常用的的英语有那些(汉语意思)?
第一部分、计算机算法常用术语中英对照 Data Structures 基本数据结构 Dictionaries 字典 Priority Queues 堆 Graph Data Structures 图 Set Data Structures 集合 Kd-Trees 线段树 Numerical Problems 数值问题 Solving Linear Equations 线性方程组 Bandwidth Reduction 带宽压缩 Matrix Multiplication 矩阵乘法 Deter...

丰镇市15664305211: C++编译运行时提示无法解析的外部符号 -
贸花硫酸: 看错误信息,编译应该没什么问题,是在链接的时候出的错,C++中,使用模板编程的时候,声明和实现都要写在头文件中,如果实现不在头文件中,就会出现链接的时候,找不到符号的情况.你把实现都放到头文件中去,应该就没什么问题了.

丰镇市15664305211: 为啥总提示"无法解析的外部符号" -
贸花硫酸: 但是当我调用该库里的函数时,编译老是出现"error LNK2019:无法解析的外部符号... ..."的错误,真是奇怪.但动态加载dll该函数是能够正确调用的,说明该函数没有问题吧. ------解决方案--------------------------------------------------------码制问...

丰镇市15664305211: 无法解析的外部符号,该怎么处理 -
贸花硫酸: 这个工程缺少库(lib文件), 你应该把这些lib加入到工程中. 另外, 你应该在菜单: 项目(Project)->属性(Properties)->配置属性(Configuration Properties)-> C/C++ -> 代码生成(Code Generation) ->基本运行时检测(Basic Runtime Check)改为默认(Default); ->缓冲区安全检测(Buffer Security Check)改为否(No);

丰镇市15664305211: LNK2019: 无法解析的外部符号 -
贸花硫酸: &x作参数没有问题.无法解析的知符号,一般都是没有找到Dll.错误显道示已经编译出.obj文件,编译已经通过,就是链接的时候出错.你用了什么版DLL,需要在项目属性的linker->input中设置.lib 如果你用了mfc或atl,要把General->Use of MFC和Use of ATL设置一权下.

丰镇市15664305211: c++中无法解析的外部符号 -
贸花硫酸: template <class T> class BiTree { public:...BiNode<T>*& Root(); //错误Root没有定义函数体,改一下吧 .. };

丰镇市15664305211: 这段代码错在哪?提示无法解析的外部符号 win32控制台 -
贸花硫酸: 所有的MFC实现文件第一条语句都是:#include "stdafx.h".但是,你自己创建的是 win32控制台程序,因此你包含这个是有问题的 一般情况下,是由于没有找到相应的实现(unresolved).代码链接中断所导致的这种错误. 原因: 未包含相...

丰镇市15664305211: 无法解析的外部符号 -
贸花硫酸: 无法解析的外部符号意思就是类型的定义能够找到,但是找不到对应实现代码.一般都是因为Dll或lib没有包含够引起.

丰镇市15664305211: C++运行时提示无法解析的外部符号? -
贸花硫酸: 建议将代码附上,因为有可能是编译器或者其它问题

丰镇市15664305211: 无法解析的外部符号,引用头文件为什么出出现这种情况 -
贸花硫酸: [0]出现无法解析可能是因为lib文件不正确,比如64位的编译配置,结果使用的是32位的lib包. [1]只写了类声明,但还没有写实现类,造成调用时无法解析 [2]声明和定义没有统一,造成链接不一致,无法解析 [3]没有在项目属性页的链接器的命令...

丰镇市15664305211: 为什么编译链接的时候还是提示无法解析的外部符号 -
贸花硫酸: 在你的类声明下面加上这样一句:unsigned int boole::n; 原因是静态变量是在声明这个类的时候就要在内存中分配空间的,加上这样一句意思就是给这个静态变零分配一个unsigned int 类型的内存空间.非静态变量的其他类成员是在实例化一个对象的时候才分配空间,所以不需要像静态变量这样需要特殊定义. 编译器报的这种错误经常是一个东西有声明却没有去实现(定义).

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网