con.txt и C ++ - PullRequest
       33

con.txt и C ++

8 голосов
/ 18 декабря 2010
#include <fstream>

int _tmain(int argc, _TCHAR* argv[])
{
   std::ofstream F("con.txt", std::ios::out);

   F << "some text in con.txt";

   F.close();

   return 0;
}

выход:

some text in con.txt

Если я заменю «con.txt» на «something.txt», то что-то будет содержать текст «some text in something.txt

Я думаю, что файл con.txt связывается с консольным файлом ... Что реально произошло в первом случае?

1 Ответ

21 голосов
/ 18 декабря 2010

CON - это зарезервированное имя устройства на платформах Windows. Его не следует использовать в качестве имени файла, даже с расширением.

Из документации :

Не используйте следующие зарезервированные имена устройств для имени файла: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 и LPT9. Также избегайте этих имена, сопровождаемые сразу же продление срока действия; например, NUL.txt не рекомендуется.

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