Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Прокомментируйте код


Автор: Gloft 12.9.2008, 09:53
Прокомментируйте код 
собственно значение функция я понимаю но вот как они в комплексе работают и главное зачем, не пойму
 
Код

// Прикручиваем созданную консоль к стандартному потоку вывода
int handle = _open_osfhandle( reinterpret_cast<long>( GetStdHandle( STD_OUTPUT_HANDLE ) ), _O_TEXT );
*stdout = *_fdopen( handle, "w" );
setvbuf( stdout, NULL, _IONBF, 0 );

Автор: Rpahut 12.9.2008, 10:08
Код

// получаем файл-дескриптор стандартного вывода (консоль?)
int handle = _open_osfhandle( reinterpret_cast<long>( GetStdHandle( STD_OUTPUT_HANDLE ) ), _O_TEXT );
// открываем его для вывода(логично)
*stdout = *_fdopen( handle, "w" );
// куазываем что вывод будет без буферизации
setvbuf( stdout, NULL, _IONBF, 0 );
// терь в консоль можно писать через переменную stdout


Так мне гугль сказал smile 

Автор: W4FhLF 12.9.2008, 10:12
В данном случае

Код

reinterpret_cast<long>( GetStdHandle( STD_OUTPUT_HANDLE ) )


можно заменить на 

Код

(long)GetStdHandle( STD_OUTPUT_HANDLE )


Так должно быть понятнее. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)