【问题标题】:how to use kiss fft in Visual Studio 2010如何在 Visual Studio 2010 中使用 Kiss fft
【发布时间】:2013-08-04 15:57:54
【问题描述】:

我已经从here 下载了kiss fft。但我真的不知道如何在Visual Studio 中使用它。例如,我在 Visual Studio 中创建了一个空的 win32 项目后,我应该如何复制粘贴 zip 文件中的文件并更改配置文件中的命令,以便我可以使用 Kiss fft 库中的所有功能?

感谢您帮助我!

【问题讨论】:

  • 压缩文件中有什么?库和头文件?
  • 还有一些其他的杂文件,如READE等。但如果我只是将文件包含在第一个目录中,它似乎无法编译。有1个.c文件和3个头文件。编译器报告“未解析的外部”不知道我是否也应该在外部依赖项中做一些事情

标签: c++ visual-studio-2010 fft kissfft


【解决方案1】:

如果您的 zip 文件中有标头 (h) 和源 (c) 文件,请右键单击新的空项目并添加(解压缩后的副本)它们。
您需要将包含路径设置为它们所在的位置,以便您可以#include 所需的头文件。
而“未解决的外部”意味着它已经看到了一个声明,例如在头文件中,但找不到定义。
注意#include 头文件到 C++ 项目中的 C 源代码。如果您已包含源代码,除非您另有说明,否则它将寻找 C++。 你需要这样做

extern "C" {
#include "fft_header.h"
}

更多详情here


编辑 好的,我下载了文件,创建了一个空的 Win32 控制台应用程序,选择了空项目,添加了项目中附加包含的路径。 然后我添加了一个主文件,如下所示,同时添加了您在下载中提到的 C 文件。

extern "C"
{
    #include "kiss_fft.h"
}

int main()
{
    kiss_fft_cfg cfg;
    kiss_fft_cpx *fin;
    kiss_fft_cpx *fout;
    kiss_fft(cfg, fin, fout);
}

我有警告但没有链接错误。

【讨论】:

  • 如果我添加 extern "C" 似乎它仍然不起作用。实际上,只有三个文件,你能检查一下如何修复这个编译错误吗? Kiss_fft.c Kiss_fft.h _kiss_fft_guts.h 在zip文件的第一个目录中。
  • 你需要详细说明你在做什么,因为它对我有用
  • 目前,我只想编译这三个文件,就是这样。然后我会尝试找出代码的细节。您在哪个文件中#include“kiss_fft.h”以及在哪个文件中创建 int main()?对不起,我不是一个好的 C 程序员,所以我不确定它是否可以在没有 int main 的情况下工作;
  • " 将路径添加到项目中的附加包含" 意味着右键单击您的项目,在属性(上下文菜单底部)下转到 "C/C++ | General | Additional Include Directories" 并说你把标题放在哪里
  • @Cancan 看到屏幕截图。顺便说一句,我的 main 函数进入了我创建的一个新的源文件 main.cpp,我将它添加到我的空项目中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-23
相关资源
最近更新 更多