当在C源文件中调用cu文件中定义的函数时,会出现undefined reference的问题,而在C++源文件中调用cu文件中定义的函数时则不会出现这个问题。

出现上述问题的原因是,nvcc编译器采用的是C++的编译规则,而C和C++对函数名的编译规则不同。

要解决上述问题,只需要在cu文件中定义的函数前加上extern "C"即可,这样nvcc编译器就会按照C的编译规则来编译该函数了。

由此我们需要谨记,cu文件类似于C++的源文件,而不是C的源文件。

 

相关文章:

  • 2022-12-23
  • 2021-07-23
  • 2022-12-23
  • 2022-03-03
  • 2021-08-05
  • 2021-05-24
  • 2022-01-07
  • 2021-08-11
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-04
  • 2021-04-20
  • 2022-12-23
  • 2022-12-23
  • 2021-07-02
相关资源
相似解决方案