
Letton
26.09.2018
13:57:05
это работает
А не ответ часть вопроса
Почему при точке входа WinMain/wWinMain не запускается консоль. А при точке входа main запускается. Как это работает ? И как компилятор понимает что WinMain/wWinMain является точкой входа, если стандартной является main.Как работать с точкой входа main без запуска консоли, используя библиотеку widnows.h? Ещё хотелось бы спросить где можно найти про это структурированную информацию (почитать про это, как это работает). Заранее Спасибо!

Igor
26.09.2018
13:58:47
ну на первый вопрос тебе ответили, и даже на второй практически

Google

Stanislav
26.09.2018
13:58:49

Letton
26.09.2018
13:59:14
Что такое сабситема в гугле нету ответа
Написанно это ситема в которой запускается программа
Чего
Как это рабтает ?

Stanislav
26.09.2018
13:59:45
https://msdn.microsoft.com/ru-ru/library/fcc1zstk.aspx

Letton
26.09.2018
14:00:19
Читал
Не понял
Я не понимаю как это работает
Поэтому ещё спросил где про это понятно и струтурировано, чтобы не было сразу всего непонятного, почтать

Igor
26.09.2018
14:04:56
Я не понимаю как это работает
Если WinMain определена, WINDOWS устанавливается по умолчанию.
написал в коде WinMain - студия сама разрулила, что тебе нужно не cmd.exe запускать, а сразу окошки к бою готовить
Выбор подсистемы влияет на символ точки входа (или функцию точки входа), который будет выбран компоновщиком.
точка входа - это не main, это платформозависимая хрень вроде __int_main_func, из которой в дальнейшем вызывается твой main или другая функция, в зависимости от среды

Letton
26.09.2018
14:06:49
Я не понимаю как она разрули что получается код одинаковый только точки входа разные а исходник тоже совсем разный?
Где про это почитать можно где все с азов начинается

Google

Letton
26.09.2018
14:07:40
А потом до хорошего уровня
Чтоб все понимать

Igor
26.09.2018
14:19:12
для начала рекомендую почитать учебник по русскому языку, чтобы научиться ставить знаки препинания в предложениях, и формулировать более читабельные вопросы
https://msdn.microsoft.com/en-us/library/f9t8842e.aspx
ещё можно погуглить про c runtime

Letton
26.09.2018
14:21:28
Извинияюсь за неграмотность, просто расстороился из-за непонимания
Я хочу найти ресурс(сайт, книгу и т.д), где будет объяснятся все с азов и так далее по нарастающей, чтобы не было непонимания. Только начал изучать c++, а уже половину непонятно.

Stanislav
26.09.2018
14:25:42
это не имеет отношения к С++, а к операционной системе
ну и никто не запрещает создавать консоль в гуевом приложение, или гуй в консольном

Letton
26.09.2018
14:26:35
Ну непонятно ты говоришь
Я же про другое спрашивал
Либо я тупой
Где остальные люди этому учились ? Я не понимаю

Max
26.09.2018
14:30:21

Stanislav
26.09.2018
14:30:35

Max
26.09.2018
14:30:39
тебе тут кучу ссылок накидали. С них и начни.

Pavel
26.09.2018
14:30:58
хай, может есть у кого рядом ссылки на чаты по си? А то решил до с++ добраться через си :). Спасибо

Stanislav
26.09.2018
14:31:22

Letton
26.09.2018
14:31:25

Stanislav
26.09.2018
14:31:36

Max
26.09.2018
14:31:44

Google

D77
26.09.2018
14:31:48

Stanislav
26.09.2018
14:31:52
но для начинающих есть @supapro

Побитый
26.09.2018
14:32:12

Pavel
26.09.2018
14:35:20
C/C++ chat же
я больше в режиме чтения пока, а тут практически ниче не понятно :). Вот и подумал, что будет лучше найти что-то ближе. За ссылку на @supapro спасибо

Letton
26.09.2018
14:39:30
Я не могу кодить не понимая
Хотя могу представлять что оулчится

Побитый
26.09.2018
14:39:58

Letton
26.09.2018
14:40:10
Уже задумывался

Олег
26.09.2018
14:43:32
Вы тут молодые, шутливые.
А то ведь знаете, как оно бывает. В один прекрасный день покажется, что man pages адекватно написаны, компилятор понятно работает, а в чужом легаси-коде, в принципе, не так уж сложно разобраться.
И всё. Жизнь под откос.

Letton
26.09.2018
14:45:05
Я просто ищу структурированный ресурс
На русском

Побитый
26.09.2018
14:45:26
Хах

Dmitry
26.09.2018
14:45:29
msdn

Letton
26.09.2018
14:45:40
Ну е мае

Побитый
26.09.2018
14:45:51

Letton
26.09.2018
14:45:59
Нет

Побитый
26.09.2018
14:46:00
Ты шо думал, в сказку попал?

Letton
26.09.2018
14:46:16
Где адекватно расписано с азов все
Например про c++

Google

Побитый
26.09.2018
14:46:32
С азов только учебники

Letton
26.09.2018
14:46:55
Какие именно
Их куча
Я вашего совету жду
совета*

Pavel
26.09.2018
14:47:59
половина любого учебника и потом разу в маны (cppreference)

Dmitry
26.09.2018
14:48:44
msdn по описанию подходит

Max
26.09.2018
14:50:11
Я вашего совету жду
Избегай всё с названием "c++ за 21 день", "для чайников" и "понятным языком". Тянись к авторам Страуструп, Шилдт, Прата, Эккель.
Несколько посмотришь — и остальное в документацию.
и — в @supapro .

Letton
26.09.2018
14:50:55
А какую книгу ты превой советуешь прорчиать
По C++

yuri
26.09.2018
14:51:09
Какие именно
В вижуал студии свойства проекта -> Linker -> System -> Subsystem. Там выбирается консоль или ГУИ.

Max
26.09.2018
14:51:30
да хз. Все они — те же яйца, только в профиль.
есть пачка, которые я бы читать не советовал, но я не запомнил ни авторов, ни названия.
Хочешь конкретики — возьми Пратта.

Letton
26.09.2018
14:56:17
https://www.ozon.ru/context/detail/id/7979735/ Она ?

Igor
26.09.2018
14:57:08
у Прата последняя книга в 2011-м вышла? Новее не выходили?
Я помню эту книгу и она не совсем полная
кажется, раздела про шаблоны там вообще не было

Letton
26.09.2018
14:57:39
Год выпуска 2012

Google

Igor
26.09.2018
14:57:52
ну это русский перевод. видимо
в 2012
я сейчас купил последнюю книгу по шаблонам
нового ничего в ней не нахожу

Letton
26.09.2018
14:59:17
Обучение стандарту ISO, включая обсуждение шаблонов, стандартной библиотеки шаблонов (STL), класса string, исключений, RTTI и пространств имен.

Alexander
26.09.2018
15:45:56

Igor
26.09.2018
16:10:29
Хотя могу представлять что оулчится
если утрировать, то выполнение программы начинается не с main, а из другой функции в C RunTime Library (CRT), условно __crt_main - на линуксе она сделана так, на винде эдак
внутри __crt_main вызывается main(), или WinMain(), или что-нибудь ещё, в зависимости от того, как была скомпилирована программа - студийный компилятор позволяет выбрать имя этой функции, гцц наверное тоже
эти детали определяются настройками компилятора и линковщика, и я сомневаюсь что где-то существует подробно разжёванная глава из книги о том, как это работает - скорее уж обрывки документации, комментариев, и исходных кодов
ценность этой информации в повседневном программировании - примерно нуль целых нуль десятых, если только ты не задался целью написать свою ось, свой компилятор или свою CRT


Ilia
26.09.2018
16:27:02
если утрировать, то выполнение программы начинается не с main, а из другой функции в C RunTime Library (CRT), условно __crt_main - на линуксе она сделана так, на винде эдак
внутри __crt_main вызывается main(), или WinMain(), или что-нибудь ещё, в зависимости от того, как была скомпилирована программа - студийный компилятор позволяет выбрать имя этой функции, гцц наверное тоже
эти детали определяются настройками компилятора и линковщика, и я сомневаюсь что где-то существует подробно разжёванная глава из книги о том, как это работает - скорее уж обрывки документации, комментариев, и исходных кодов
ценность этой информации в повседневном программировании - примерно нуль целых нуль десятых, если только ты не задался целью написать свою ось, свой компилятор или свою CRT
Ты всё классно расписал, но неправильно.
В винде у оконных приложений две точки входа.
И main, и win main.


Konstantin
26.09.2018
16:28:08
вообще что угодно может быть точкой входа, что укажешь в /ENTRYPOINT то и будет

Letton
26.09.2018
16:28:21
знаю

Killua
26.09.2018
16:51:26

Nik
26.09.2018
17:46:52
По C++
Как уже сказали выше, с такими вопросами тебе не про плюсы читать нужно, а про ос. И если хочешь понимать как оно работает - начни с ассемблера и напиши консольное приложение под винду
Ни main, ни WinMain не являются точками входа. Если используешь студию, можешь в настройках линкера указать main в качестве entrypoint и посмотреть как все взорвется

Rabu
26.09.2018
18:05:46
в винде как и в лине _start или что-то другое?

Pavel
26.09.2018
18:13:01
любое имя