Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2010, 16:01   #1
Syltan
Заблокирован
 
Регистрация: 27.08.2009
Сообщений: 569
По умолчанию Ошибка компиляции простой проги

Установил студии 2008. написал простую прогу.
Код:
#include <iostream>
using namespace std;

int main()
{
cout<<"Привет Мир";
cin.get();
}
Выдаёт ошибку при компиляции: error PRJ0003 : Error spawning 'rc.exe'.
Syltan вне форума Ответить с цитированием
Старый 22.04.2010, 16:06   #2
Tirendus
Форумчанин
 
Аватар для Tirendus
 
Регистрация: 20.03.2009
Сообщений: 272
По умолчанию

----------------------------------
Tirendus вне форума Ответить с цитированием
Старый 22.04.2010, 16:07   #3
Tirendus
Форумчанин
 
Аватар для Tirendus
 
Регистрация: 20.03.2009
Сообщений: 272
По умолчанию

Код:
#include <iostream>
using namespace std;

int main()
{
    cout<<"Привет Мир";
    system("pause");
    return 0;
}
Не пустые функции должны иметь возвращаемое значение, возвращается оператором return <value>, где <value> того типа, который ты указал тут
Код:
int main()
Tirendus вне форума Ответить с цитированием
Старый 22.04.2010, 16:14   #4
Syltan
Заблокирован
 
Регистрация: 27.08.2009
Сообщений: 569
По умолчанию

Да не в этом проблемма, такой код работает на друних студиях, а на моей не работает. Просто после установки студии, выдалор такое сособщение.
Изображения
Тип файла: jpg clip_image002.jpg (65.3 Кб, 81 просмотров)
Syltan вне форума Ответить с цитированием
Старый 22.04.2010, 16:18   #5
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Tirendus, int main() { } - вполне нормальная запись, программа всегда возвращает ноль.

Syltan, дело явно в компиляторе. Попробуй переставить. Инсталятор выдавал какие-нибудь другие ошибки?

Последний раз редактировалось ds.Dante; 22.04.2010 в 16:20.
ds.Dante вне форума Ответить с цитированием
Старый 22.04.2010, 18:10   #6
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию

int main() { }
- может это вполне и нормальная запись и возвращает она всегда 0, но компилятор без return'а выдает ошибку, C++ Builder 6, 7, Visual Studio тоже.
Так что лучше дописывать и не ленится.
coNsept вне форума Ответить с цитированием
Старый 23.04.2010, 11:40   #7
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Visual Studio 2005 и 2008 компилируют без ошибок и предупреждений.

Лично я обычно вообще пишу void main().
ds.Dante вне форума Ответить с цитированием
Старый 23.04.2010, 12:30   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

"Лично я обычно вообще пишу void main()."
По стандарту компилятор обязаны вас бить по рукам.
p51x вне форума Ответить с цитированием
Старый 23.04.2010, 13:33   #9
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Заинтересовавшись этим вопросом, провёл маленькое исследование, почитав спецификации Си 99 и C++ 2003.

Си: определены только два варианта - int main() и int main(int argc, char *argv[]) (раньше можно было не указывать возвращаемый тип - подразумевался int). Во всех примерах стоит return 0.

C++: обязательно есть два варианта - int main() и int main(int argc, char *argv[]), но возможны другие варианты в зависимости от реализации (наверное, Visual Studio - это и есть "реализация". :)). Во многих примерах нет оператора return. Кроме того, некоторые компиляторы при виде void main() выдают предупреждение.

Отныне всегда буду писать int main() :), по мере возможности - без return.

Последний раз редактировалось ds.Dante; 23.04.2010 в 13:36.
ds.Dante вне форума Ответить с цитированием
Старый 23.04.2010, 14:12   #10
Crudelis
Пользователь
 
Аватар для Crudelis
 
Регистрация: 05.04.2010
Сообщений: 56
По умолчанию

Я никогда не использовал int main() пишу void main() никогда небыло ошибки, у меня Visual Studio 2008
сout<<"Изучаю программирование" точка с запятой
Crudelis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ ошибка компиляции Seil_29 Помощь студентам 9 20.12.2009 22:23
Ошибка компиляции ImmortalAlexSan C++ Builder 3 20.12.2009 21:19
Ошибка компиляции luk4196 Помощь студентам 4 30.11.2009 23:14
Проблема компиляции проги с использованием MPI! neo-210 Общие вопросы C/C++ 7 14.07.2009 17:55
Ошибка компиляции С++ jeka101 Общие вопросы C/C++ 3 27.03.2009 19:16