npak
|
|
« Ответ #1 : 19-03-2005 08:05 » |
|
Поток ввода -- это поток, назначенный на эту должность при запуске процесса.
При старте приложения из командной строки в качестве потока ввода выбирается ввод консоли, как правило это клавиатура. можно переназначить ввод при помощи соответствующих конструкций командной строки.
Например, команда my_prog < some_file.txt
запустит программу my_prog и назначит для программы стандартный ввод из файла some_file.txt, cin будет читать из этого файла.
При запуске графического приложения cin по умолчанию не связан ни с каким средством ввода. Для инициализации cin в этом случае его надо явно проинициализировать.
При запуске приложения из другого приложения можно задать стандартный поток ввода приложения-потомка, например, связав его с файлом. Получится, что cin будет читать из файла, а не с клавиатуры. Если этого не сделать, то последствия зависят от операционной системы. Насколько я помню, потомок наследует стандартные потоки родителя.
|