首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LNK2001,又来了

LNK2001,又来了
EN

Stack Overflow用户
提问于 2012-12-04 17:59:21
回答 2查看 150关注 0票数 1

我寻找了类似的问题,但唯一的主题可能是关于库的使用,我会避免……这是我的问题,我得到了这个错误:

代码语言:javascript
复制
1>Signal generator.obj : error LNK2001: unresolved external symbol "double __cdecl findMaxModulus(double *,int)" (?findMaxModulus@@YANPANH@Z)

我正在使用visual studio professional 2008来开发一个c程序。我有一个主文件和另一个包含我编写的所有函数的文件myFunctions.h/c。问题是,当我包含"myFunctions.c“时,这些错误不会出现,而当我包含"myFunctions.h”时,它们会出现。

我正在做我在大学里记得的事情(我现在对matlab更感兴趣),那就是

代码语言:javascript
复制
/* Home-made includes */
#include "myType.h"
#include "myFunctions.h"

就在包含其他头文件(stdlib、math...)之后

你猜对了吗?谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-04 18:01:42

该错误表示链接器找不到该函数。这很可能意味着您根本没有编译myFunctions.c文件。确保将其作为“源文件”添加到Visual Studio中的项目中。

票数 3
EN

Stack Overflow用户

发布于 2012-12-04 18:10:34

如果你想在gcc上试试,试着像下面这样编译这两个.c文件:

gcc -Wall main.c myfunction.c -o final.out

链接阶段链接器中缺少其他.c file.So,无法解析外部符号(这是您的函数)。像我说的那样试一试。

对于Visual Studio:您需要检查是否检查了所有源文件才能进行构建。有一个选项可以包含多个源文件中的多个文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13700228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档