Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/49: Рейтинг темы: голосов - 49, средняя оценка - 4.63
Еухений
1 / 1 / 0
Регистрация: 11.01.2011
Сообщений: 43
1

Не компилируется в visual 2010

11.03.2011, 21:05. Просмотров 8902. Ответов 17
Метки нет (Все метки)

Простой код :
C++
1
2
3
4
5
6
#include <iostream>
int main ()
{
std :: cout << " privet " << std ::endl;
return 0;
}
Код слизал с учебника.
Проблема вот в чем, при компиляции пишет что 1 ошибка при любых вводимых программах. Думал 10 плохая. Скачал 6,0 там такая же фигня.
Во так вот ругается :


1>------ Построение начато: проект: 15, Конфигурация: Debug Win32 ------
1> stdafx.cpp
1> 15.cpp
1>c:\users\user\desktop\15\15\15.cp p(1): warning C4627: #include <iostream>: пропущен при поиске использования предкомпилированного заголовка
1> Добавление директивы в "StdAfx.h" или перестройка предкомпилированного заголовка
1>c:\users\user\desktop\15\15\15.cp p(7): fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "StdAfx.h"" в источник.
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

При вводе дерективы "#include "StdAfx.h""
Получается :

1>c:\users\user\desktop\15\15\15.cp p(5): error C2065: cout: необъявленный идентификатор
1>c:\users\user\desktop\15\15\15.cp p(5): error C2039: endl: не является членом "std"
1>c:\users\user\desktop\15\15\15.cp p(5): error C2065: endl: необъявленный идентификатор
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2011, 21:05
Ответы с готовыми решениями:

Не компилируется в visual 2010
Простой код : #include &lt;iostream&gt; int main () { std :: cout &lt;&lt; &quot; privet &quot;...

Не компилируется код в Visual C++ 2010
#include&quot;stdafx.h&quot; #include&quot;iostream&quot; #include&quot;conio.h&quot; usingnamespacestd;...

Visual Studio 2010 (Не компилируется ни одна программа. Даже та,которую мастер создал автоматически!)
Не компилируется ни одна программа. Даже та,которую мастер создал...

Компилируется в С++ bulder 6.0 но не компилируется в VS 2010 express
Здравствуйте. есть небольшая программка которая с успехом компилируется в...

Программа компилируется в Borland 6.0 но не компилируется в Visual Studio 2008
Ета програма компилируетса в борланде 6.0 но не компилируетса в Visualstudio...

17
Gepar
1182 / 538 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
11.03.2011, 21:20 2
1. Нужно добавлять #include "StdAfx.h"
2. Нужно ОБЯЗАТЕЛЬНО в vs писать using namespace std;
те код будет такой:
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <StdAfx.h>
using namespace std;
 
int main ()
{
cout << " privet " <<endl;
return 0;
}
Ну и после этого приписывать что cout и endl принадлежат просранству имён std не надо.
Если и это не поможет тогда
3.При созданни нового проэкта убрать галочку возле "прекомпелированный заголовок".
1
Еухений
1 / 1 / 0
Регистрация: 11.01.2011
Сообщений: 43
11.03.2011, 21:28  [ТС] 3
Попробовал, не помогает ((((((
Пишет:

1>------ Построение начато: проект: 1, Конфигурация: Debug Win32 ------
1> stdafx.cpp
1> 1.cpp
1>c:\users\user\desktop\1\1\1.cpp(3): fatal error C1083: Не удается открыть файл включение: StdAfx.h: No such file or directory
1> Создание кода...
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
11.03.2011, 21:51 4
Еухений, уберите строку

C++
1
#include <StdAfx.h>
0
CyBOSSeR
Эксперт С++
2313 / 1686 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
11.03.2011, 22:04 5
Цитата Сообщение от Gepar Посмотреть сообщение
1. Нужно добавлять #include "StdAfx.h"
Не нужно, если создать пустой проект.
Цитата Сообщение от Gepar Посмотреть сообщение
2. Нужно ОБЯЗАТЕЛЬНО в vs писать using namespace std;
Это не обязательно, а крайне нежелательно. Почитайте по пространства имен и зачем они нужны.

Еухений,
1. Cоздайте пустой проект (empty project).
2. Добавьте в созданный проект cpp файл c любым именем.
3. Вставьте в добавленный файл код с вашего первого поста.
4. Соберите, запустите и радуйтесь жизни.
2
Gepar
1182 / 538 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
11.03.2011, 22:46 6
Ну вот уже только одна ошибка с StdAfx.h Тогда можно ещё попробовать написать "StdAfx.h" вместо <StdAfx.h> и проверьте что это слово написано у вас правильно.
Ну а вообще я считаю что писать консольные приложения в VS2010 это как из пушки по воробьям, гораздо проще скачать другой компилятор и другую среду поменьше - он и работать будет побыстрее и для начала его функционала будет предостаточно. Я рекомендую Codeblocks (качать лучше с встроенным minigw компилятором), там у вас заморочек таких не будет со средой.

Добавлено через 39 минут
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
Это не обязательно, а крайне нежелательно. Почитайте по пространства имен и зачем они нужны.
Ну для маленьких консольных приложений эта строка не навредит + vs2010 не хочет без этого компилировать приложение.
1
MILAN
888 / 782 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
11.03.2011, 22:48 7
Цитата Сообщение от Gepar Посмотреть сообщение
vs2010 не хочет без этого компилировать приложение
А вот ето спорный вопрос.
0
CyBOSSeR
Эксперт С++
2313 / 1686 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
11.03.2011, 22:50 8
Цитата Сообщение от Gepar Посмотреть сообщение
vs2010 не хочет без этого компилировать приложение
Компилирует и причем без проблем. Все таки почитайте про пространства имен.
1
silent_1991
Эксперт С++
5011 / 3071 / 271
Регистрация: 11.11.2009
Сообщений: 7,045
Завершенные тесты: 1
11.03.2011, 22:50 9
Цитата Сообщение от Gepar Посмотреть сообщение
для маленьких консольных приложений эта строка не навредит
Ну да, свистнем пачку жвачки здесь, проедем на красный на 90 в час там, маленькие преступления - они же никому не вредят, правда?

Цитата Сообщение от Gepar Посмотреть сообщение
vs2010 не хочет без этого компилировать приложение
Это как так? Ввели пространства имён и сразу запрет на их использование? Или, может, приложения не хотят компилироваться потому, что кто-то забывает писать std:: в некоторых местах?
0
Gepar
1182 / 538 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
11.03.2011, 22:58 10
silent_1991, ок, помогите создавшему тему новичку - напишите почему его код не компилируется? Он же не забыл указать пространство имён в некоторых местах чего же это у него не работает его проэкт? Чего-то ваш правильный код без using namespace std не определил (судя по ошибкам) чему же принадлежит cin и endl.
Ну а сравнения с преступлениями это вообще бред, не находите что стандартные возможности с++ не стоит сравнивать с преступлениями? Да и задолбаться можно жеуказывая всюду пространство имён std если только оно нам и надо так почему бы не указать его 1 раз?
0
silent_1991
Эксперт С++
5011 / 3071 / 271
Регистрация: 11.11.2009
Сообщений: 7,045
Завершенные тесты: 1
11.03.2011, 23:02 11
В сообщении 5 указан самый верный алгоритм действий, лучше не придумаешь. А если после этого у ТСа снова ничего не захочет работать - то дело явно не в плохих мелкомягких, а в чьих-то руках.
0
asics
Freelance
Эксперт С++
2858 / 1793 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
11.03.2011, 23:03 12
Цитата Сообщение от Gepar Посмотреть сообщение
Да и задолбаться можно жеуказывая всюду пространство имён std если только оно нам и надо так почему бы не указать его 1 раз?
Видимо Вы не слыхали про "хороший" тон програмирования, а жаль...
1
silent_1991
Эксперт С++
5011 / 3071 / 271
Регистрация: 11.11.2009
Сообщений: 7,045
Завершенные тесты: 1
11.03.2011, 23:05 13
На счёт пространства имён. Я уже где-то приводил простой пример. Для примера взял функцию swap. Имя ходовое, может захотеться его использовать. Только вот проблемка - в стандартном пространстве имён уже описана такая функция. Опытный программист тут же поймёт, в чём дело (вернее нет, не поймёт, у него просто не будет для этого повода - он не станет употреблять using namespace std; ), а вот незадачливый новичок побежит на форум и создаст очередную тему, где будет спрашивать про странную и непонятную штуку - перегрузку функций и про то, что нет какой-то там однозначности.
1
Gepar
1182 / 538 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
11.03.2011, 23:11 14
Цитата Сообщение от asics Посмотреть сообщение
Видимо Вы не слыхали про "хороший" тон програмирования, а жаль...
Ну как только в стандарт внесут строчку "не используйте using namespace std" так сразу я и изменю своё мнение, а пока "хорошее программирование" звучит не более как "а в той книге что я читал было написано что так плохо". В том учебнике что я читаю это не считается плохим тоном, уж извините, мне тоже так удобнее. Вам не нравиться- дописывайте при каждом выводе через cout std:: (ведь писать после include <iostream> using std::cout по вашим правилам хорошего тона как я понял тоже плохо), я же не имею ничего против.

Добавлено через 1 минуту
Цитата Сообщение от silent_1991 Посмотреть сообщение
Для примера взял функцию swap. Имя ходовое, может захотеться его использовать.
А переменные начиная с _ вам тоже часто хочется использовать а потом возникают конфилкты?
1
silent_1991
Эксперт С++
5011 / 3071 / 271
Регистрация: 11.11.2009
Сообщений: 7,045
Завершенные тесты: 1
11.03.2011, 23:15 15
Видите ли, в учебниках обычно оговаривают, что используют этот приём для избежания большого количества текста, чтобы можно было сосредоточиться на том, что код делает, а не на том, из чего он состоит. Про быдлокод в стандарте тоже ничего не сказано, однако он продолжает существовать. Но пожалуйста, продолжайте его порождать и дальше, не буду вам мешать.

Добавлено через 1 минуту
Цитата Сообщение от Gepar Посмотреть сообщение
А переменные начиная с _ вам тоже часто хочется использовать а потом возникают конфилкты?
Ага, использую я их часто. Однако конфликтов что-то пока не встречал, вот какая штука...
1
Еухений
1 / 1 / 0
Регистрация: 11.01.2011
Сообщений: 43
11.03.2011, 23:41  [ТС] 16
Вот что надо в настройках поменять )))

Project - Properties - C/C++ - Precompiled Headers - Create/Use Precompiled header (должно быть Not Using Precompiled Headers)

Добавлено через 49 секунд
Как закрыть тему ?
0
Gepar
1182 / 538 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
11.03.2011, 23:44 17
Еухений, ну а я о чём писал в первом же своём посте?
Но нет же, я не прав, мои методы не каноничны и всё такое сразу тут народу набежало ...
1
silent_1991
Эксперт С++
5011 / 3071 / 271
Регистрация: 11.11.2009
Сообщений: 7,045
Завершенные тесты: 1
11.03.2011, 23:46 18
Gepar, в этом вы были правы, и никто и слова не сказал.
0
11.03.2011, 23:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2011, 23:46

не компилируется код в VS 2010
есть такой код #include &lt;windows.h&gt; #include &lt;iostream&gt; #include &lt;stdio.h&gt;...

Не компилируется проект в Visual Studio
Подскажите пожалуйста, в чём может быть дело? Я установил Visual Studio 2013 и...

Не компилируется .cpp файл в visual studio
Не могу скомпилировать .cpp файл в visual studio c++ express 2010. В Visual...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru