Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Почему БЕЗОШИБОЧНО создаётся файл, а его не видно? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Транспонирование матрицы с использованием указателей http://www.cyberforum.ru/cpp-beginners/thread279071.html
Задание: Из матрицы X (mxn) построить матрицу Y, поменяв местами строки и столбцы. Использовать указатели. Помогите, второй день не могу освоить указатели. А завтра сдавать работу...
C++ Лаба по программированию Известен вещественный знакопеременный двумерный массив K=(Kij), i=1,2,..5, j=1,2,..7 Вычислить разность между максимальными и минимальными по модулю элементами массива. Вывести на экран полученную... http://www.cyberforum.ru/cpp-beginners/thread279057.html
Подсчитать наибольшее количество подряд идущих пробелов в тексте C++
С помощью текстового редактора БЛОКНОТ создать файл, содержащий текст, длина которого не превышает 700 символов (длина строки текста не должна превышать 70 символов). Файл должен иметь...
C++ Обработка структур данных
Здравствуйте.никак не могу понять задачу. подскажите решение. в голову ничего не лезит. (задача на языке СИ) вот условие: Сведения о читателях библиотеки состоят из фамилии, имени, адреса...
C++ произведение элементов в каждом столбце с нечетным индексом http://www.cyberforum.ru/cpp-beginners/thread279049.html
Доброго времени суток форумчане. Прошу помощи в решении вот этой задачки: 1.Найти произведение элементов в каждом столбце с нечетным индексом и создать из них одномерный массив. Буду очень...
C++ Узнать с какими ключами может запускаться программа при компилировании через командную строку нужно вводить всякие параметры, типо gcc -o file.exe file.c мне надо изъять подобную команду для компиляции проекта из MVS есть наверняка какой-нить файл,... подробнее

Показать сообщение отдельно
fasked
Эксперт С++
4937 / 2517 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
19.04.2011, 18:32
Цитата Сообщение от kravam Посмотреть сообщение
Создаёт временное имя файла во временной же директории... ТО есть я ЯВНО указываю директорию,
а при создании имени файла берётся за основу ЛЕВАЯ директория, я в неё в жизни не лазил
Я могу Вас понять, но читать лучше само описание, а не комментарии к коду (это еще раз доказывает, что излишние комментарии зло). На этой же самой странице описаны параметры функций:
Parameters

prefix
The string that will be pre-pended to names returned by _tempnam.

dir
The path used in the file name if there is no TMP environment variable, or if TMP is not a valid directory.

str
Pointer that will hold the generated name and will be identical to the name returned by the function. This is a convenient way to save the generated name.
dir - Путь используется в имени файла, если не существует переменной среды окружения TMP или если TMP не валидная директория.
С этим понятно? То есть, Вы можете стереть все переменные среды окружения и радоваться
Ниже (в этой же статье написано еще раз):
_tempnam will generate a unique file name for a directory chosen by the following rules:

If the TMP environment variable is defined and set to a valid directory name, unique file names will be generated for the directory specified by TMP.

If the TMP environment variable is not defined or if it is set to the name of a directory that does not exist, _tempnam will use the dir parameter as the path for which it will generate unique names.

If the TMP environment variable is not defined or if it is set to the name of a directory that does not exist, and if dir is either NULL or set to the name of a directory that does not exist, _tempnam will use the current working directory to generate unique names. Currently, if both TMP and dir specify names of directories that do not exist, the _tempnam function call will fail.
_tempnam будет генерировать уникальное имя файла в директории выбранной согласно следующим правилам:
Если переменная среды окружения TMP определена и установлена как валидный путь к директории, то уникальные имена файлов будут сгенерированы для директории определенной в TMP.
Если TMP не определена или установлена как имя несуществующей директории, _tempnam будет использовать параметр dir как путь для которого будут сгенерированы уникальные имена.
Если TMP не определена или установлена как имя несуществующей директории и если параметр dir равен NULL или имени директории, которой не существует, то _tempnam будет исопльзовать текущую рабочую директорию для генерации уникальных имен. В настоящее время, если и TMP и dir указывают на директории, которых не существует, вызов _tempnam завершится с ошибкой.

В общем все сложно с этой функцией у мелкомягких, как и со всеми остальными POSIX функциями.
Однако, я все равно не могу понять причины. Для чего создавать файл в директории с программой, если он все равно временный?
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru