我找了类似的问题,但唯一的主题可能是关于使用库的问题,我会避免...这是我的问题,我收到此错误:
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),这是
/* Home-made includes */
#include "myType.h"
#include "myFunctions.h"
在包含其他标题(stdlib,数学等等)之后
任何猜测?谢谢
答案 0 :(得分:3)
错误意味着链接器找不到该功能。这很可能意味着您根本没有编译myFunctions.c
文件。确保将其作为“源文件”添加到Visual Studio中的项目中。
答案 1 :(得分:0)
如果您想尝试gcc
尝试编译两个.c
文件,如下所示:
gcc -Wall main.c myfunction.c -o final.out
您缺少其他.c
文件。因此在链接阶段链接器无法解析外部符号(这是您的函数)。试试我说的。
对于Visual Studio:您需要检查是否检查了所有源文件以进行构建。可以选择包含多个源文件中的文件数。