1

gcc では、close 関数を使用してファイル ポインターを閉じます。ただし、私の nvcc コンパイラはそれを許可しません。cuda 固有の呼び出しまたはエイリアスが見つからないようです。

特別なcudaファイルポインタが閉じていますか?

これは私が得るエラーです。 error: identifier "close" is undefined

この単純なコードの場合。 FILE* fp = fopen(filename,"r"); if(fp == NULL) { return NULL; }

close(fp);

4

1 に答える 1

0

NVCCがファイルをコンパイルすると、.cuファイルの C/C++ 部分のコンパイルがネイティブ C/C++ コンパイラ (この場合はgcc ) に委任されます。したがって、エラーはgccから来ています。

このファイルのコードに対して gcc がこのエラーを生成する理由を確認する必要があります。close()が定義されている必要なヘッダー ファイルがインクルードされていない可能性がありますunistd.h。またはfclose()、別のコメンターが提案したように試してください。

于 2011-04-21T05:52:00.347 に答える