Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
philipp95
0 / 0 / 0
Регистрация: 23.05.2011
Сообщений: 11
#1

необъявленный идентификатор - C++

21.01.2014, 14:38. Просмотров 695. Ответов 12
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <conio.h>
#include <iostream>
using namespace std;
int vichis(int,int,int&);
void cifri(int);
void main()
{
    int a;
    setlocale(0,"rus");
    cout<<"Введите число= ";
    cin>>a;
    if(vichis(cifra1,cifra2,otvet)==true)
        cout<<"Число положительно= "<<otvet;
    else
        cout<<"Число отрицательно= "<<otvet;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void cifri(int a)
{
    int cifra1=0;
    int vr=a;
    cifra1=vr%10;
    int cifra2=0;
    vr=a;
    while (vr>10)
    {
        vr=vr/10;
    }
    cifra2=vr;
}
int vichis(int cifra1,int cifra2,int& otvet)
{
    otvet=cifra1-cifra2;
    if(otvet>=0)
        return true;
    else 
        return false;
}
Почему он не видит в мейне cifra1,cifra2,otvet?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 14:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос необъявленный идентификатор (C++):

Необъявленный идентификатор - C++
Думаю проблему в скобках, где не могу найти=( #include &lt;iostream&gt; #include &lt;windows.h&gt; using namespace std; void main() { ...

Необъявленный идентификатор j - C++
Нужно сформировать квадратную матрицу вида: 1 2 ...... n n n-1 ..... 1 1 2 ...... n n n-1 ..... 1 ............... ...

Необъявленный идентификатор - C++
Подскажите где ошибка? Совсем не давно начал изучать С++. Вроде все правильно. а проверка все ровно выдает ошибку. #include &lt;iostream&gt; ...

Необъявленный идентификатор - C++
И снова ВСЕМ добрый вечер!!!:) Написав десяток примеров из книги, в качестве упражнений для себя и закрепления материала решил на...

Необъявленный идентификатор - C++
addClientCommand( &quot;m0d_tele_locations&quot;, (int)cmd_tele_locations ); addClientCommand( &quot;m0d_teleport_locations&quot;, (int)cmd_tele_locations );...

WindowProc необъявленный идентификатор - C++
Не могу понять в чем проблема WindowProc=FuncWndProc; void FuncWndProc(Message winmes); { ////////// } пишет, что...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 14:40 #2
Цитата Сообщение от philipp95 Посмотреть сообщение
Почему он не видит в мейне cifra1,cifra2,otvet?
потому что не объявлены они
То что объявлено в одной функции не может быть использовано в другой. Это локальные переменные
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
21.01.2014, 14:40 #3
Цитата Сообщение от philipp95 Посмотреть сообщение
Почему он не видит в мейне cifra1,cifra2,otvet?
а почему их должно быть видно? первые два определены внутри cifri(), последний - вообще не определен.
0
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 14:43 #4
Цитата Сообщение от philipp95 Посмотреть сообщение
void main()
{
* * int a,b,c=0;
* * setlocale(0,"rus");
* * cout<<"Введите число= ";
* * cin>>a>>b;
* * if(vichis(a,b,c)==true)
* * * * cout<<"Число положительно= "<<otvet;
* * else
* * * * cout<<"Число отрицательно= "<<otvet;
}
что то такое должно быть
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
21.01.2014, 14:44 #5
Кликните здесь для просмотра всего текста
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
34
35
36
37
38
39
#include <iostream>
using namespace std;
 
void cifri(int a, int& cifra1, int& cifra2 )
{
    cifra1=0;
    int vr=a;
    cifra1=vr%10;
    cifra2=0;
    vr=a;
    while (vr>10)
    {
        vr=vr/10;
    }
    cifra2=vr;
}
 
int vichis(int cifra1,int cifra2,int& otvet)
{
    otvet=cifra1-cifra2;
    if(otvet>=0)
        return true;
    else 
        return false;
}
 
int main()
{
    int a;
    int cifra1, cifra2, otvet;
    
    setlocale(0,"rus");
    cout<<"Введите число= ";
    cin>>a;
    if(vichis(cifra1,cifra2,otvet)==true)
        cout<<"Число положительно= "<<otvet;
    else
        cout<<"Число отрицательно= "<<otvet;
}
0
philipp95
0 / 0 / 0
Регистрация: 23.05.2011
Сообщений: 11
21.01.2014, 14:49  [ТС] #6
Цитата Сообщение от Tulosba Посмотреть сообщение
Кликните здесь для просмотра всего текста
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
34
35
36
37
38
39
#include <iostream>
using namespace std;
 
void cifri(int a, int& cifra1, int& cifra2 )
{
    cifra1=0;
    int vr=a;
    cifra1=vr%10;
    cifra2=0;
    vr=a;
    while (vr>10)
    {
        vr=vr/10;
    }
    cifra2=vr;
}
 
int vichis(int cifra1,int cifra2,int& otvet)
{
    otvet=cifra1-cifra2;
    if(otvet>=0)
        return true;
    else 
        return false;
}
 
int main()
{
    int a;
    int cifra1, cifra2, otvet;
    
    setlocale(0,"rus");
    cout<<"Введите число= ";
    cin>>a;
    if(vichis(cifra1,cifra2,otvet)==true)
        cout<<"Число положительно= "<<otvet;
    else
        cout<<"Число отрицательно= "<<otvet;
}
Предупреждение 3 warning C4700: использована неинициализированная локальная переменная "cifra1"
и так со всеми тремя переменными, а при попытке отладки он выдает ошибку
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
21.01.2014, 14:55 #7
Цитата Сообщение от philipp95 Посмотреть сообщение
Предупреждение 3 warning C4700:
А кто говорил, что будет легко
C++
1
int cifra1=0, cifra2=0, otvet=0;
1
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 14:55 #8
Цитата Сообщение от philipp95 Посмотреть сообщение
int cifra1=1, cifra2=2, otvet=0;
задайте начальные значения
1
philipp95
0 / 0 / 0
Регистрация: 23.05.2011
Сообщений: 11
21.01.2014, 15:05  [ТС] #9
Цитата Сообщение от Tulosba Посмотреть сообщение
А кто говорил, что будет легко
C++
1
int cifra1=0, cifra2=0, otvet=0;
Да уж не легко))))
А не подскажешь, как при вызове функции vichis использовать значения,которые посчитались в функции cifri?
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
21.01.2014, 15:15 #10
перед
C++
1
if(vichis(cifra1,cifra2,otvet)==true)
вставить:
C++
1
cifri(a, cifra1, cifra2 );
0
some_name
Вежливость-главное оружие
225 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,440
21.01.2014, 15:16 #11
Цитата Сообщение от philipp95 Посмотреть сообщение
А не подскажешь, как при вызове функции использовать значения,которые посчитались в функции ?
перед вызовом vichis вызовите cifri, он инециализирует ваши переменные.

Ноте: называйте методы нормальными именами, а то глаза слезятся )
0
Tulosba
21.01.2014, 15:22
  #12

Не по теме:

Цитата Сообщение от some_name Посмотреть сообщение
инециализирует
Цитата Сообщение от some_name Посмотреть сообщение
глаза слезятся
это точно.

0
philipp95
0 / 0 / 0
Регистрация: 23.05.2011
Сообщений: 11
21.01.2014, 15:47  [ТС] #13
Цитата Сообщение от some_name Посмотреть сообщение
перед вызовом vichis вызовите cifri, он инециализирует ваши переменные.

Ноте: называйте методы нормальными именами, а то глаза слезятся )
Хорошо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2014, 15:47
Привет! Вот еще темы с ответами:

endl необъявленный идентификатор - C++
Почему компилятор использует endl, как переменную, а не переход на новую строку?

Ошибка необъявленный идентификатор - C++
Ошибка: j: необъявленный идентификатор Как ее поправить, помогите пожалуйста #include &lt;iostream&gt; using namespace std; int main() ...

Класс: необъявленный идентификатор - C++
Есть вот такой код: #include &lt;stdio.h&gt; #include &lt;Windows.h&gt; #pragma comment(lib, &quot;user32.lib&quot;) int main() { Info_PC...

string: необъявленный идентификатор - C++
Пишу Win32 проект в VS 2010 Подключил #include &lt;string&gt; но получается такая вот ошибка.. вот такой кусочек кода.. string...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.01.2014, 15:47
Ответ Создать тему
Опции темы

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