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

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

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

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

21.01.2014, 14:38. Просмотров 674. Ответов 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?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 14:38     необъявленный идентификатор
Посмотрите здесь:

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

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

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

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

Ошибка необъявленный идентификатор - C++
Изучаю C++ по книге. Дошел до следующего примера: 1 // Создание и использование внутренних указателей 2 3 #include &quot;stdafx.h&quot; ...

Title: необъявленный идентификатор - C++
Люди добрые, нужна ваша помощь в лабораторной, сдавать в субботу уже.. Создать массив объектов и вывести на экран: Список книг...

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

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 14:40     необъявленный идентификатор #2
Цитата Сообщение от philipp95 Посмотреть сообщение
Почему он не видит в мейне cifra1,cifra2,otvet?
потому что не объявлены они
То что объявлено в одной функции не может быть использовано в другой. Это локальные переменные
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
21.01.2014, 14:40     необъявленный идентификатор #3
Цитата Сообщение от philipp95 Посмотреть сообщение
Почему он не видит в мейне cifra1,cifra2,otvet?
а почему их должно быть видно? первые два определены внутри cifri(), последний - вообще не определен.
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;
}
что то такое должно быть
Tulosba
:)
Эксперт С++
4393 / 3236 / 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;
}
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"
и так со всеми тремя переменными, а при попытке отладки он выдает ошибку
Tulosba
:)
Эксперт С++
4393 / 3236 / 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;
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 14:55     необъявленный идентификатор #8
Цитата Сообщение от philipp95 Посмотреть сообщение
int cifra1=1, cifra2=2, otvet=0;
задайте начальные значения
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?
Tulosba
:)
Эксперт С++
4393 / 3236 / 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 );
some_name
Вежливость-главное оружие
221 / 221 / 55
Регистрация: 19.02.2013
Сообщений: 1,431
21.01.2014, 15:16     необъявленный идентификатор #11
Цитата Сообщение от philipp95 Посмотреть сообщение
А не подскажешь, как при вызове функции использовать значения,которые посчитались в функции ?
перед вызовом vichis вызовите cifri, он инециализирует ваши переменные.

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

Не по теме:

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

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2014, 15:47     необъявленный идентификатор
Еще ссылки по теме:

Ошибка: i: необъявленный идентификатор - C++
нужно если d&gt;9 присвоить ss соотв по порядку букву англ алф #include &lt;iostream&gt; using namespace std; void main (){ int d=36; ...

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...

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


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

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

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

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