在 gcc 中,close 函数用于关闭文件指针。但是我的 nvcc 编译器不允许这样做。我似乎找不到特定于 cuda 的调用或别名。
是否有一个特殊的 cuda 文件指针关闭?
这是我得到的错误。error: identifier "close" is undefined
对于这个简单的代码;FILE* fp = fopen(filename,"r");
if(fp == NULL)
{
return NULL;
}
close(fp);
最佳答案
当 NVCC 编译您的 .cu
文件,它将文件的 C/C++ 部分的编译委托(delegate)给您的 native C/C++ 编译器(在您的情况下为 gcc )。所以,错误来自gcc。
您需要检查为什么 gcc 会为此文件中的代码产生此错误。很可能,您没有在 close()
的位置包含必要的头文件。已定义,unistd.h
.或尝试 fclose()
正如另一位评论者所建议的那样。
关于cuda - 在 Cuda (nvcc) 中关闭文件指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5655353/