Библиотека времени выполнения C (CRT) в языке программирования C++ работает следующим образом: www.rsdn.org
- Инициализируются переменные CRT (например, errno и osver). www.rsdn.org
- Происходит инициализация динамической памяти (кучи). www.rsdn.org
- Инициализируется среда обработки ошибок в вычислениях с плавающей точкой. www.rsdn.org Это необходимо не только для библиотечных функций (например, sqrt), но и для преобразований между целочисленными и плавающими типами данных. www.rsdn.org
- Получаются значения аргументов командной строки программы и переменных среды. www.rsdn.org
- В случае необходимости, происходит инициализация консоли и привязка стандартного вывода к файловым дескрипторам C. www.rsdn.org
- При старте исполняемого файла создаётся консоль. www.rsdn.org
- Происходит вызов цепочки функций инициализации CRT и конструкторов глобальных переменных. www.rsdn.org
- И лишь после этого вызывается функция [w]main или [w]WinMain. www.rsdn.org
- Программа работает. www.rsdn.org
- Выполняется последовательность действий по очистке. www.rsdn.org
- И, наконец, происходит завершение процесса. www.rsdn.org
Код, инициализирующий CRT, находится в одной из нескольких библиотек в зависимости от статического или динамического связывания библиотеки CRT и использования машинного, управляемого или смешанного кода. learn.microsoft.com Этот код обрабатывает запуск, инициализацию внутренних данных потоков и завершение CRT. learn.microsoft.com