19

ディレクトリ名を取得するためだけに tempnam() を使用しているため、このセキュリティ警告は私の場合には当てはまりません。どうすれば無効にできますか? それを行うためのスイッチが見つかりませんでした。

4

4 に答える 4

6

本当にディレクトリ名だけが必要な場合はP_tmpdir、 で定義されている文字列定数マクロ を使用します<stdio.h>

于 2009-02-12T13:46:54.670 に答える
0

「tempnam() 関数は、有効なファイル名である文字列へのポインターを返し、tempnam() がチェックされたときにこの名前のファイルは存在しませんでした。」

この警告は、ファイルのチェックとその後の作成との間の競合状態が原因で発生します。

ディレクトリ名だけを取得したいですか?それは何の役に立つのですか?

見知らぬ人がすでに言ったように、-Wno-deprecated-declarations を使用してこれ (および同様の警告) を無効にすることができます。

于 2009-02-12T13:47:27.600 に答える
-5

GCC の-Wno-deprecated-declarationsオプションを使用して、このようなすべての警告を無効にすることができます。ただし、警告を適切に処理し、コンパイラの提案に従うことをお勧めします。

于 2009-02-12T13:42:56.927 に答える