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

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

05.10.2018, 12:19. Показов 681. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
При отладке выдает данную ошибку: "Вызвано исключение по адресу 0x7795E314 (ntdll.dll) в Lab3-Classes.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x00AEC260". Насколько я понимаю проблема в выделение динамической памяти, но решения найти не смог.

main.cpp
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
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <stdio.h>
#include "ship.h"
using namespace std;
 
 
int main()
{
    char*S1 = const_cast<char*>("Yatch"), *S2 = const_cast<char*>("Korabl"),*S3;
    int m1 = 25000, m2 = 32000,b;
    ship P1;
    ship P2(S1, m1);
    ship P3(P2);
    //P2.Print();
    P3.Setmod(S2);
    P3.Setton(m2);
    //P3.Print();
    S3 = P3.Getmod();
    cout << S3;
    b = P2.Getton();
    cout << b;
    P1.Input();
    //P1.Print();
    return 0;
}
class.cpp
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
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <stdio.h>
#include "ship.h"
using namespace std;
 
ship::ship(void)
{
    mod = NULL;
    ton = 0;
}
 
ship::~ship(void)
{
 
}
 
ship::ship(char*mod1, int ton1)
{
    mod = new char[strlen(mod1)];
    strcpy_s(mod, strlen(mod), mod1);
    ton = ton1;
}
 
ship::ship(ship& S1)
{
    mod = new char[strlen(S1.mod)];
    strcpy_s(mod, strlen(mod), S1.mod);
    ton = S1.ton;
}
 
void ship::Setmod(char* mod1)
{
    mod = new char[strlen(mod1)];
    strcpy_s(mod, strlen(mod), mod1);
}
 
char* ship::Getmod(void)
{
    return mod;
}
 
void ship::Setton(int ton1)
{
    ton = ton1;
}
 
int ship::Getton(void)
{
    return ton;
}
 
 
void ship::SetAll(char* mod1, int ton)
{
 
}
 
void ship::Input()
{
    char mod1[64];
    cout << "Vvedite Marky: ";
    cin >> mod1;
    mod = new char[strlen(mod1)];
    strcpy_s(mod, strlen(mod1+9), mod1);
    cout << "Vvedite Vodoizmeshenie: ";
    cin >> ton;
}
 
void ship::Print()
{
    cout << Getmod() << Getton() << endl;
}
class.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once
 
class ship
{
private:
    // Марка
    char* mod;
    // Водоизмещеие
    int ton;
public:
    ship(void);
    ~ship(void);
    ship(char* mod1, int ton1);
    ship(ship& S1);
    void Setmod(char* mod1);
    char* Getmod(void);
    void Setton(int ton1);
    int Getton(void);
    void SetAll(char* mod1, int ton1);
    void Input(void);
    void Print(void);
};
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.10.2018, 12:19
Ответы с готовыми решениями:

Нарушение прав доступа при чтении
Имею функцию такого плана: void RenameOldLabels() { USES_CONVERSION; string path, pathAfterRename, pathToDelFile, pathToDelDir,...

Нарушение прав доступа при чтении
Добрый день при выполнении программы выходит ошибка: Необработанное исключение в &quot;0x00ce4893&quot; в &quot;Diskret.exe&quot;:...

Нарушение прав доступа при чтении
Здравствуйте,реквестирую помощь,я уже волосы на голове рву в попытке решить эту проблему,при чтении из бинарного файла выводит...

2
Заблокирован
05.10.2018, 12:27
Цитата Сообщение от Bredotius Посмотреть сообщение
strlen(mod)
Такая команда вернет тебе мусор для неинициализированной строки.
Цитата Сообщение от Bredotius Посмотреть сообщение
char*S1 = const_cast<char*>("Yatch")
От того, что ты привел тип, права доступа к памяти никак не изменились. Она все так же для чтения и осталась. И не понятно, зачем тебе понадобился const cast. Надо в функции передавать const'ы, а не как сейчас.
0
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
05.10.2018, 14:00
Bredotius, плюсовые строки не устраивают? или хочется хардкора?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.10.2018, 14:00
Помогаю со студенческими работами здесь

Нарушение прав доступа при чтении
Здравствуйте. Собственно проблема вот в чем при вызове функции нахождения определителя выскакивает ошибка Необработанное исключение в...

Нарушение прав доступа при чтении
// ConsoleApplication6.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include...

Нарушение прав доступа при чтении
Вот пишу игру морской бой, решил написать функцию, которая расставляет корабли, при это необходимо их расставлять через одну клетку друг от...

Нарушение прав доступа при чтении
Собственно код программы: #include &quot;stdio.h&quot; #include &quot;conio.h&quot; #include &quot;math.h&quot; #include &quot;string.h&quot; #include...

Нарушение прав доступа при чтении
#include &lt;iostream&gt; using namespace std; class programm { public: int *mass1 = new int, *mass2 = new int; void...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 из исходников с помощью 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. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru