Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
7 / 6 / 1
Регистрация: 29.10.2016
Сообщений: 175

Нарушение прав доступа для чтения

29.05.2018, 09:37. Показов 1002. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В программе используется односвязный циклический список, все работает, но при выполнении list_print, программа выводит значения на экран и выдает ошибку. В чем проблема?

44: Вызвано исключение: нарушение доступа для чтения. p было nullptr.
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <cstdlib>
struct list {
    unsigned int data;
    list* next;
}
*beg, *q, *end, *next, *p, *s;
void first_elem(int a){
    q = new list;   
    q->data = a;   
    q->next = q;  
    beg = q;
    end = q;
}
void new_element(int a){
    p = new list;
    p->data = a;
    p->next = 0;
    end->next = p; 
    end = p;
}
 
int find_elem(int col){
    unsigned int min = 4294967295;
    s = beg;
    while ((s) && (col !=0)) {
        if (s->data < min) {
            min = s->data;
        }
        s = s->next;
        col--;
    }
    return min;
}
 
void list_print(){
    p = beg;
    do {
        printf("%u ", p->data);
        p = p->next;
    } while (p != beg);
}
 
int main()
{
    printf_s("Hello, this programm can find min elem. \n");
    printf_s("Enter, 1st elem.(>0) \n");
    unsigned int a=0;
    do {
        scanf_s("%u", &a);
    } while (a<0);
    first_elem(a);
    int choise=0;
    int col = 1;
    do {
        system("cls");
        printf_s("Choose your path: \n");
        printf_s("1: Add a element \n2: Print elements\n3: Find min element \n4: Exit\n");
        scanf_s("%i", &choise);
        switch (choise)
        {
        case 1: {
            printf_s("Enter,a element.(>0) \n");
            unsigned int b = 0;
            do {
                scanf_s("%u", &b);
            } while (b<0);
            new_element(b);
            col++;
            break;
        }
        case 2: {
            list_print();
            break;
        }
        case 3: {
            unsigned int minimum=0;
            minimum=find_elem(col);
            printf_s("Your least element is: %u", minimum);
            break;
        }
        default: {
            choise = 4;
            break;
        }   
        }
    } while (choise != 4);
    _getch();
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.05.2018, 09:37
Ответы с готовыми решениями:

Нарушение прав доступа для чтения
#define _CRT_SECURE_NO_WARNINGS #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; #include &lt;iostream&gt;...

Ошибка обращения к строке (нарушение прав доступа чтения)
Добрый всем день немогу разобраться что за ошибка и как ее локализовать код и скрин прикреплены

Нарушение доступа для чтения
#include &quot;pch.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; using namespace std; const int a = 11; void...

1
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
29.05.2018, 09:43
Проверку на пустоту туда добавь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.05.2018, 09:43
Помогаю со студенческими работами здесь

Исключение - нарушение доступа для чтения
Добрый вечер, столкнулся с проблемой нарушения доступа для чтения 0х1110112. Задача - написать программу, которая будет умножать матрицу...

вызвано исключение нарушение доступа для чтения
Выдаёт исключение на 35 строке, ругается на переменную nach. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include...

Нарушение доступа для чтения. this было 0xFFFFFFFFFFFFFFFF
Здравствуйте, суть проблемы : в программе создается массив объектов данного образца, а при освобождении памяти т.е удалении данного массива...

Вызвано исключение: нарушение доступа для чтения
Всем привет! Пишу программу, которая должна записать в файл в первом столбике рандомную цифру или рандомную букву, а во втором столбике...

Вызвано исключение: нарушение доступа для чтения
Программа обрабатывает двумерный массив. На 45-й строке выдает ошибку. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru