Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
2 / 2 / 0
Регистрация: 14.10.2018
Сообщений: 113
1

Error C4703: используется потенциально неинициализированная локальная переменная-указатель "pel"

21.10.2019, 19:06. Показов 3047. Ответов 10
Метки нет (Все метки)

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
40
41
42
43
44
45
46
47
48
49
50
#include "vector.h"
#include <stdio.h>
#include <conio.h>
#include <locale.h>
 
int main()
{
    vector el;
    vector1 colel;
    vector *pel; //указатель нужен для реализации полиморфизма
    int key1, key2;
    setlocale(0, "RUS"); // обеспесиваем вывод в консольное окно символов кириллицы
    do //выбирвем вид эллипса
    {
        printf("\n1 - произведение векторов\n");
        printf("2 - произведение векторов2\n");
        printf("ESC - выход\n");
        printf("Ваш выбор: \n");
        key1 = _getch();
        switch (key1)
        {
        case '1':
            pel = &el;
            break;
        case '2':
            pel = &colel;
            break;
        }
        if (key1 != 27)
        {
            do //выбираем действие для выбранного типа эллипса
            {
                printf("\n1 - ввод координат\n");
                printf("2 - вывод координат\n");
                printf("3 - посчитать произведение\n");
                printf("ESC - выход\n");
                printf("Ваш выбор: \n");
                key2 = _getch();
                switch (key2)
                {
                case '1': pel->printCoordinates(); break;
                case '2':pel->DisplayParam(); break;
                case '3':  pel->proizvedenie(); //ЭТА СТРОКА
                    break;
                }
            } while (key2 != 27);
        }
    } while (key1 != 27);
    return 0;
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.10.2019, 19:06
Ответы с готовыми решениями:

Ошибка C4703 используется потенциально неинициализированная локальная переменная-указатель "A"
Помогите не могу понять, что не так то, уже многое перепробовал #include &quot;stdafx.h&quot; #include...

Выдает ошибку C4703: используется потенциально неинициализированная локальная переменная-указатель "a"
Выдает ошибку C4703: используется потенциально неинициализированная локальная переменная-указатель...

Исправить ошибку: "C4703: используется потенциально неинициализированная локальная переменная-указатель"
Вообщем выдает одну ошибку в функции добавления в 76 строке, а именно &quot;Ошибка 1 error C4703:...

Error C4703: используется потенциально неинициализированная локальная переменная-указатель
// prog8.cpp: определяет точку входа для консольного приложения. #include &lt;stdio.h&gt; #include...

10
Модератор
Эксперт CЭксперт С++
4496 / 4117 / 756
Регистрация: 07.10.2015
Сообщений: 8,534
21.10.2019, 19:26 2
Invisibletime, чему будет равно pel, если введется не '1' и не '2'?
0
2 / 2 / 0
Регистрация: 14.10.2018
Сообщений: 113
21.10.2019, 19:35  [ТС] 3
ничему?
0
Модератор
Эксперт CЭксперт С++
4496 / 4117 / 756
Регистрация: 07.10.2015
Сообщений: 8,534
21.10.2019, 19:40 4
Вот потому и
Error C4703: используется потенциально неинициализированная локальная переменная-указатель "pel"

Добавлено через 3 минуты
Как вариант: проверять на ввод только Esc, '1' или '2'. При вводе чего-то другого, опять запрашивать ввод
0
2 / 2 / 0
Регистрация: 14.10.2018
Сообщений: 113
21.10.2019, 19:41  [ТС] 5
в программе, которая использовалась для примера, все работало нормально, не подскажите как возможно исправить , пожалуйста
0
Модератор
Эксперт С++
10733 / 8888 / 5369
Регистрация: 18.12.2011
Сообщений: 23,779
21.10.2019, 19:47 6
Лучший ответ Сообщение было отмечено Invisibletime как решение

Решение

Цитата Сообщение от Invisibletime Посмотреть сообщение
как возможно исправить
C++
1
2
3
4
5
6
7
8
        switch (key1)
        {
        case '1':
            pel = &el;
            break;
        default:
            pel = &colel;
        }
А еще лучше:
C++
1
pel=key1=='1'?&el:&colel;
1
805 / 474 / 162
Регистрация: 25.01.2019
Сообщений: 1,143
21.10.2019, 19:50 7
Invisibletime, оператор default: в свиче есть, используйте как-нибудь его, например, как написано выше,
Цитата Сообщение от liv Посмотреть сообщение
При вводе чего-то другого, опять запрашивать ввод
0
2 / 2 / 0
Регистрация: 14.10.2018
Сообщений: 113
21.10.2019, 19:56  [ТС] 8
большое спасибо, проверю

Добавлено через 17 секунд
спасибо
0
Модератор
Эксперт CЭксперт С++
4496 / 4117 / 756
Регистрация: 07.10.2015
Сообщений: 8,534
21.10.2019, 20:07 9
zss, а esc?
0
Модератор
Эксперт С++
10733 / 8888 / 5369
Регистрация: 18.12.2011
Сообщений: 23,779
21.10.2019, 20:11 10
А чему противоречит ввод esc?
Выполнится pel = &colel; и потом не будет использоваться.
1
Модератор
Эксперт CЭксперт С++
4496 / 4117 / 756
Регистрация: 07.10.2015
Сообщений: 8,534
21.10.2019, 20:12 11
Хотя, пардон, все отработает корректно...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.10.2019, 20:12

Помощь в написании контрольных, курсовых и дипломных работ здесь.

"Используется потенциально неинициализированная локальная переменная - указатель"
Доброго времени суток! Возникла проблема в программе, на 68 строке пишет, что &quot;используется...

Потенциально неинициализированная локальная переменная-указатель (Ошибка C4703) - Как исправить?
Здравствуйте, как можно исправить вот эти ошибки: Ошибка C4703 используется потенциально...

Используется потенциально неинициализированная локальная переменная-указатель
// ex4.cpp: определяет точку входа для консольного приложения. // ...

Ошибка: Используется потенциально неинициализированная локальная переменная
Ошибка: Используется потенциально неинициализированная локальная переменная prev - 48 строчка,...


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

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

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