|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Помогите в изучении C. |
|
C/C++ - Помогите в изучении C.
|
Пользователь Сообщения: 76 |
Профиль | Сайт | Отправить PM | Цитировать
Добрый вечер. Решил я попытаться освоить программирование, решил начать с C. До этого с программированием дела не имел ( школьный курс Basic не в счет ). Читаю книгу Д. Ритчи & Керниган Б. Язык программирования С., поставил Eclipse, компиляторы MinGW. Начал писать, а вернее списывать, свою первую программу. Текст программы взят из книги.
eclipse после компиляции выдавал две ошибки, хотя и запускал программу. Они пропали после того как текст изменил на Этот текст я взял в инете. Объясните в чем разница? Что такое int я разобрался, но зачем в данной программе нужно указывать тип функции? И про return 0 |
|
Отправлено: 23:16, 03-02-2014 |
Пользователь Сообщения: 121
|
Профиль | Отправить PM | Цитировать Цитата Efimalex:
Скорее всего у вас используется компилятор C++, а не C. В стандарте С++ есть требование, что функция main должна возвращать целочисленный код завершения. return 0, в данном случае означает, что программа при успешном завершении передает операционной системе код завершения 0. Обычно код завершения 0 означает успешное завершение программы, другими значениями обозначают аварийное завершение. |
|
Отправлено: 08:57, 04-02-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Efimalex:
У меня в среде Dev-C++ ошибок не наблюдается. |
|
Отправлено: 08:58, 04-02-2014 | #3 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать Efimalex, если кратко, то Большая разница: int main() или void main()?
return 0 - возвращает ноль компилятору, свидетельствуя о том, что функция (программа) завершена правильно. Иностранные источники: stackoverflow.com What is the proper declaration of main msdn.microsoft.com Main() Return Values (C# Programming Guide) stackoverflow.com What should main return in c and c |
------- Отправлено: 08:59, 04-02-2014 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать lxa85, тут что-то всё в кучу — и C, и C++, и C#.
|
|
Отправлено: 09:26, 04-02-2014 | #5 |
Пользователь Сообщения: 121
|
Профиль | Отправить PM | Цитировать Цитата lxa85:
|
|
Отправлено: 09:39, 04-02-2014 | #6 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать torauma, может и операционной системе, не знаю.
Главное куда-то "вышестоящей системе", которая примет решение о дальней судьбе программы. Операционной системы... Нашел. Есть такая любопытная вещь OSv. (Краткая справка на opennet.ru) Там куда 0 возвращается, тоже в операционную систему? Или она там такая "тонкая", что почти как гипервизор? Iska, на msdn явное упоминание С++ на нашел, т.к. С++ и С# языки родственные + на stackoverflow попадаются вырезки из стандартов, оставил. |
------- Отправлено: 11:40, 04-02-2014 | #7 |
Пользователь Сообщения: 121
|
Профиль | Отправить PM | Цитировать lxa85, не знаю как там OSv устроена, но в Линуксе и Винде, если я правильно помню, передается родительскому процессу. А передачей информации между процессами вроде как ОС занимается.
Точно могу сказать, что код завершения компилятору не передается, т.к. к моменту его передачи компилятор все свои задачи уже выполнил. |
Отправлено: 13:03, 04-02-2014 | #8 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать Цитата torauma:
Нет, в целом я согласен, что моя формилировка вызывает вопросы, просто спортивный интерес. AFAIK программы написанные в среде .Net в строгом смысле не являются непосредственно исполняемыми на процессоре. Они находятся в некотором промежуточном коде, и исполняются компилятором "на лету". Т.е. компилируя программу в .NET мы получаем переносимый код. А его исполнение зависит от оболочки на каждой конкретной архитектуре. По смыслу очень похоже на технологию Java. |
|
------- Отправлено: 14:31, 04-02-2014 | #9 |
Пользователь Сообщения: 76
|
Профиль | Сайт | Отправить PM | Цитировать Спасибо, с этим вроде разобрался. Если что компилятор ставил как тут написано http://www3.ntu.edu.sg/home/ehchua/p...wTo.html#mingw
|
Отправлено: 22:50, 04-02-2014 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[Ну помогите же человеку, а? :)] Помогите с конкурсом | HTML64 | Тест-форум | 0 | 29-06-2012 10:33 | |
CMD/BAT - [решено] помогите скачал себе этот вирус помогите его разблокировать | orell | Скриптовые языки администрирования Windows | 2 | 05-05-2012 15:45 |
|