Эквивалент для Java System.getProperty ("java.io.tmpdir") в C? - PullRequest
1 голос
/ 16 апреля 2010

Как видно из заголовка, свойство java.io.tmpdir в Java действительно приятно, и я не могу найти эквивалент для C. Я пишу для Windows и для Visual Studio. Я не хочу просто использовать что-то вроде C:\Temp, потому что в более поздних версиях Windows соответствующий каталог может быть чем-то вроде C:\Users\[UserName]\AppData\Local\Temp, и способ получить это будет намного проще. Я хочу каталог, а не только временный файл, потому что я загружаю и выполняю файл из Интернета.

В качестве примечания, если кто-нибудь может дать мне советы о том, как лучше использовать Google для C, это было бы очень признательно:)

Ответы [ 2 ]

3 голосов
/ 16 апреля 2010

Если вы используете Win32 API, вы можете использовать GetTempPath () .

1 голос
/ 16 апреля 2010

Это не совсем то, что вы спрашивали, но в стандартной библиотеке C:

  • tmpnam_r создаст имя файла строка
  • tmpfile создаст и откроет файл (возвращающий ФАЙЛ *)

См .: http://www.gnu.org/s/libc/manual/html_node/Temporary-Files.html для получения дополнительных возможностей

Для самого каталога вы можете получить dirname имени файла, сгенерированного вышеуказанными функциями, или в Windows вы можете получить переменную окружения TEMP, а в Unix-like вы можете либо получить переменную TMPDIR, либо использовать / tmp если TMPDIR не установлен

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...