Формат Windows PE (Portable Executable) в заголовке имеет флаг, указывающий, является ли исполняемый файл console или windowed .В зависимости от того, что это, Windows будет выделять консольное окно для приложения, или нет.Это также определяет, является ли точка входа main
или WinMain
.
. Формат Linux ELF не имеет подобного флага.Точка входа всегда main
.Понятие «консольного окна» в Linux совершенно иное.
(Обратите внимание, что вышесказанное несколько упрощает проблему, поскольку точка входа, о которой вы говорите, начинается с кода user Компилятор / компоновщик всегда предоставляет некоторый код запуска библиотеки времени выполнения, который запускается до вызова вашей пользовательской точки входа, где находится настоящая точка входа.)