0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 10
1

Не компилируется программка

23.07.2013, 22:23. Показов 1704. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте
Учусь программированию. Сейчас прохожу глобальные переменные. Переписал программку из учебника. Когда стал компилировать, то компилятор (Dev-C++4.9.9.2) пишет ошибку. Проверил несколько раз - переписал все точно из книги. Если не в напряг посмотрите плиз.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
using namespace std;
 
void func1 ();
void func2 ();
 
int count;
 
int main ()
{
int i;
for (i = 0; i < 10; i = i + 1)
    {
    count = i * 2;
    func1 ();
    }
system ("pause");
return 0;
}
 
void func1 ()
{
cout << "count: " << count;
cout << "\n"
func2 ();
}
 
void func2 ()
{
int count;
for (count = 0; count < 3; count + 1) cout << "."
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.07.2013, 22:23
Ответы с готовыми решениями:

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

Заголовочный файл, который компилируется в VS2017, не компилируется в Qt
В общем был класс &quot;Матрицы&quot;, который нормально работал в VS2017. Возникла необходимость...

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

В формате .cpp код компилируется, а в .c не компилируется
1).Подскажите почему в формате .cpp код компилируется, а в .c не компилируется 2). Как сделать...

19
10 / 10 / 1
Регистрация: 27.06.2013
Сообщений: 151
23.07.2013, 22:27 2
Пропущено 2 знака ";" и заместить count + 1 нужно count+=1
Вот исправлена программа и удачи в изучении:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
using namespace std;
 
void func1 ();
void func2 ();
 
int count;
 
int main ()
{
int i;
for (i = 0; i < 10; i = i + 1)
{
count = i * 2;
func1 ();
}
system ("pause");
return 0;
}
 
void func1 ()
{
cout << "count: " << count;
cout << "\n";
func2 ();
}
 
void func2 ()
{
int count;
for (count = 0; count < 3; count+= 1) cout << ".";
}
2
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 10
23.07.2013, 23:55  [ТС] 3
Спасибо! Все равно не компилируется. Подчеркивает строчку count = i * 2; В ошибках пишет: `count' undeclared (first use this function) . Но это же глобальная переменная, она и не должна декларироваться в функции (если я вообще правильно понял сообщение об ошибке).
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
24.07.2013, 00:11 4
Код отсюда копировали (2 пост)?
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 10
24.07.2013, 00:24  [ТС] 5
Код попробовал и написал, что получилось. А Microsoft Visual 2008 вообще 5 ошибок находит.
0
12 / 12 / 3
Регистрация: 20.09.2012
Сообщений: 75
24.07.2013, 00:40 6
"error C2872: неоднозначный символ" при переменной count
1
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
24.07.2013, 00:42 7
Цитата Сообщение от Jozin Посмотреть сообщение
Код попробовал и написал, что получилось. А Microsoft Visual 2008 вообще 5 ошибок находит.
Свой код покажите.
1
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 6
24.07.2013, 01:22 8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
using namespace std;
 
void func1 ();
void func2 ();
 
int count;
 
int main ()
{
    for (int i = 0; i < 10; i ++)
        {
            count = i * 2;
            func1 ();
        }
system ("pause");
 
return 0;
}
 
void func1 ()
{
    cout << "count: " << count<<"\n";
    
    func2 ();
}
 
void func2 ()
{
 
for (count = 0; count < 3; count ++)
    cout << ".";
}
Работающий код
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 10
24.07.2013, 11:32  [ТС] 9
Цитата Сообщение от Олекса Посмотреть сообщение
Работающий код

Не работает. В Dev-C++4.9.9.2 подчеркивает строчку count = i * 2; В ошибках пишет: `count' undeclared (first use this function). А в Microsoft Visual 2008 5 ошибок находит:
Ошибка 1 Требуется директива препроцессора C:\Users\HP\AppData\Local\Temporary Projects\ConsoleApplication1\Program.cs 1 2 ConsoleApplication1
Ошибка 2 Требуется однострочный комментарий или признак конца строки C:\Users\HP\AppData\Local\Temporary Projects\ConsoleApplication1\Program.cs 1 10 ConsoleApplication1
Ошибка 3 Требуется идентификатор, "namespace" является ключевым словом C:\Users\HP\AppData\Local\Temporary Projects\ConsoleApplication1\Program.cs 2 7 ConsoleApplication1
Ошибка 4 Требуется "{" C:\Users\HP\AppData\Local\Temporary Projects\ConsoleApplication1\Program.cs 2 20 ConsoleApplication1
Ошибка 5 Требуется "}" C:\Users\HP\AppData\Local\Temporary Projects\ConsoleApplication1\Program.cs 33 2 ConsoleApplication1

Попробую еще один компилятор установить.
0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
24.07.2013, 11:42 10
Jozin, сходу вижу, что в студии создан проект для C#, надо С++.
1
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 10
24.07.2013, 12:23  [ТС] 11
Да, Microsoft Visual я не тот скачал, я уже понял)) А почему в Dev-C++4.9.9.2 не компилируется? До этого все программы в нем нормально компилировались.

Добавлено через 22 минуты
Спасибо Murad93 за ссылку на тему, где разбирается как раз этот пример из этой книги ("error C2872: неоднозначный символ" при переменной count). Ошибка в книге. Программа не работала из-за конфликта имен - в std есть функция count(). Заменил имена глобальной и локальной переменных на "x" вместо "count". Теперь все работает. Всем спасибо за помощь!
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
24.07.2013, 12:36 12
Цитата Сообщение от Jozin Посмотреть сообщение
Ошибка в книге. Программа не работала из-за конфликта имен - в std есть функция count().
Самое интересное. Три среды и результат.
Миниатюры
Не компилируется программка   Не компилируется программка   Не компилируется программка  

1
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 10
24.07.2013, 12:49  [ТС] 13
В Dev-C++4.9.9.2 программка из книги не компилировалась. работать стала только после замены имен.
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 6
25.07.2013, 00:55 14
Не понимаю - "КАК ???"
но если заменить
C++
1
using namespace std;
на
C++
1
using std :: cout;
Программа работает и на Dev-C++4.9.9.2;
Возможно что то с пространствами имен ?!?
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
25.07.2013, 01:28 15
Написано же:
Цитата Сообщение от Jozin Посмотреть сообщение
Программа не работала из-за конфликта имен - в std есть функция count().
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 6
25.07.2013, 02:09 16
Но у VS 2010 все отлично работает ?!?

Добавлено через 4 минуты
Но почему тогда VS 2010 пропускает тот код?
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
25.07.2013, 02:14 17
Цитата Сообщение от Олекса Посмотреть сообщение
Но почему тогда VS 2010 пропускает тот код?
И не только VS (смотрите 12 пост). Компиляторы разные.
0
0 / 0 / 0
Регистрация: 23.07.2013
Сообщений: 6
25.07.2013, 02:21 18
Тогда - вопрос : какой компилятор выбрать, (Dev-C++4.9.9.2 - в топку ?)
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
25.07.2013, 02:35 19
Цитата Сообщение от Олекса Посмотреть сообщение
Тогда - вопрос : какой компилятор выбрать
12 пост.
0
Ghost
174 / 174 / 40
Регистрация: 16.09.2012
Сообщений: 526
25.07.2013, 02:39 20
Цитата Сообщение от Олекса Посмотреть сообщение
какой компилятор выбрать
IDE
mingw-4.8.1
ну и последний msys, какой там, msys+7za+wget+svn+git+mercurial+cvs-rev13.7z или новее если будет
0
25.07.2013, 02:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.07.2013, 02:39
Помогаю со студенческими работами здесь

Программка
Тут в общем сорян за такую тему, нужна помощь (если не сложно), написать приложение небольшое: ...

программка
люди хелп нужно задачку решить в одномерном массиве состоящем из n вещественных элементов...

Программка
Нужна помощь с прогой на с++, мы с ним на вы( суть такая: юзер вводит число n. Программа выдаёт...

Программка на Си++
Добрый вечер, пишу свою первую программу на с++ и вот какое условие стоит в ней, программу написал...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru