Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Какая функция выполняется пер |
Автор: TeeT 8.12.2005, 10:32 | ||
А как же стандарт, того что функция main(), выполнится первой ![]()
Разве это где нибудь написано???? |
Автор: Neitron 8.12.2005, 10:34 |
По стандарту, сначало создаются глобальные переменные, а потом вызывается main(). P.S никогда для "этого" не пиши system("pause") |
Автор: TeeT 8.12.2005, 10:41 | ||
Ну а кусок из книги можешь показать где это написано?? ![]() А чем пользоватся, если не system-ом ![]() |
Автор: Void 8.12.2005, 10:54 | ||
Кстати, нет. До вызова main должна произойти только zero-innitialization, а вызов конструкторов реализация имеет право отложить до первого использования объектов со static storage duration. См. 3.6.2/3. |
Автор: Neitron 8.12.2005, 10:57 | ||||
9.4.1. Страуструп.
Например: cin >> ""; getch();
Не нашел такой главы... Страуструп. Специальное издание. |
Автор: TeeT 8.12.2005, 10:58 |
А ссылочку можешь, дать, еси да, то дай ![]() |
Автор: Neitron 8.12.2005, 11:00 |
Я не знаю, где Страуструп есть в электронном виде. |
Автор: Void 8.12.2005, 11:01 | ||||
Это была ссылка на стандарт. Добавлено @ 11:01
Там же где и стандарт. Искать Anatolix wiki в гугле. |
Автор: Neitron 8.12.2005, 11:07 |
Спасибо, но чесно сказать мне все равно на глобальные переменные, так как ничто даже порядок их выполнения, один за другим, стандарт не гарантирует. |
Автор: TeeT 8.12.2005, 11:09 | ||
А на размер файлов ты смотрел??? еси пишешь cin>>"" прога не воспринимает Enter и пробел ![]() p.S. компилил на Builder 6 |
Автор: Neitron 8.12.2005, 11:15 |
system("pause") - заставляет прогамму вызывать дополнительный процесс.... |
Автор: TeeT 8.12.2005, 11:29 | ||
Спасибо, конечно, но я system-ом пользуюсь только при написании и отладке программы. Кстати вот кусок из ХЭЛПА: Every C and C++ program must have a program-startup function. Console-based programs call the main function at startup. Windows GUI programs call the WinMain function at startup. Where you place the startup function is a matter of preference. Some programmers place main at the beginning of the file, others at the end. Regardless of its location, the following points about main always apply. |
Автор: blackofe 8.12.2005, 20:08 |
все правильно. в хэлпе же не сказано, что кроме функций main или WinMain при старте больше ничего не должно вызываться ![]() кстати, а отладчиком отлаживать слабо? для чего придумали breakpoint'ы? |
Автор: nikitao 8.12.2005, 21:56 | ||||
Бррррррррр,я запутался. 1.TeeT ,пиши в программе вместо
так
Это необходимо не только из-за процессов,но и из-за переносимости кода прежде всего. 2.Вопрос ![]() Что такое стандарт?В смысле это международный документ или что?Страуструп и ему подобные описывают стандарт ,но это не сам стандарт.Соответственно где сам стандарт и стоит ли его читать(Есть ли там что то полезное или все Страуструп описал в своем издании С++). ![]() 3.В инете нет 3 издания Страуструпа(по моим сведениям),но вот 2 точно есть.Могу линк сбросить если надо. |
Автор: Void 8.12.2005, 22:04 | ||||||||||
Да.
См. выше.
Полезен для уточнения многих вопросов. Можно использовать его как ultima ratio в любых спорах по поводу C++. Читать подряд - нет, если не хочешь, чтобы тебя увезли санитары в рубашке с не по росту длинными рукавами.
В TC++PL Страуструпа дан огромный объем информации, но некоторые тонкости опущены.
Русского нет, английский вариант есть. |
Автор: blackofe 8.12.2005, 22:07 |
nikitao я брал здесь: http://anatolix.naumen.ru/Books/Standard?v=17wu а страуструп - это, конечно, не стандарт. это описание некоего stroustrup c++ ;). |
Автор: TeeT 9.12.2005, 09:26 | ||
Ты прав, черт побери!!! ![]() А за ссылочку пасиба. |
Автор: nikitao 9.12.2005, 16:08 |
Void,blackofe, спасибо. |
Автор: blackofe 9.12.2005, 19:05 |
nikitao, TeeT, не за что. тем более, что ссылку-то я нашел на этом же форуме ![]() ![]() |