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

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

Войти
Регистрация
Восстановить пароль
 
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
#1

Ошибка: нарушение прав доступа при чтении по адресу - C++

15.07.2015, 10:26. Просмотров 1198. Ответов 14
Метки нет (Все метки)

Код:
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
#include <SFML/Graphics.hpp>
 
int M = 3;
int N = 3;
 
int Scale = 100;
int w = Scale*M;
int h = Scale*N;
 
using namespace sf;
 
 
void DrawField(RenderTarget & target, Color color)
{
    for (int i = 0; i < w; i += Scale){
        Vertex lineV[] = {
            Vertex(Vector2f(i, 0), color),
            Vertex(Vector2f(i, h), color)
        };
        target.draw(lineV, 2,Lines);
    }// рисую вертикальные линии
 
 
    for (int j = 0; j <h; j += Scale){
        Vertex lineH[] = {
            Vertex(Vector2f(0, j), color),
            Vertex(Vector2f(w, j), color) };
        target.draw(lineH, 2, Lines);
 
    }//рисую горизонтальные линии
}
 
 
 
int main()
{
    RenderWindow window(VideoMode(w, h), "SFML works!");
 
 
    while (window.isOpen())
    {
        Event event;
        while (window.pollEvent(event))
        {
            if (event.type == Event::Closed)
                window.close();
        }
        ///////////////////////////////////////////////////////////НАЧАЛО РИСОВАНИЯ
        window.clear();
        DrawField(window, Color::Red);
 
        Texture t;
        t.loadFromFile("D:\sprite.jpg");
 
        Sprite s;
        s.setTexture(t);
        s.setPosition(0, 0);
        window.draw(s);
 
        window.display();
    }
 
    return 0;
}
При компиляции выдает ошибку:
Необработанное исключение по адресу 0x5C90DEF8 (msvcr110.dll) в Проект2.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x00227000.
Подскажите с чем это может быть связано?VS2013
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2015, 10:26     Ошибка: нарушение прав доступа при чтении по адресу
Посмотрите здесь:
C++ Ошибка при загрузке фото - нарушение прав доступа при чтении по адресу 0x00814000
Вызвано исключение по адресу 0x013C1891 в Jacobi.exe: 0xC0000005: нарушение прав доступа при чтении по адресу C++
C++ Необработанное исключение по адресу 0x00ED4891 в strings.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCCCCCCCC
C++ Необработанное исключение по адресу 0x00105FD7 в Динамические структуры: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCDCDCE09
C++ Нарушение прав доступа при чтении по адресу
C++ Нарушение прав доступа при чтении по адресу
Нарушение прав доступа при чтении по адресу C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 11:03     Ошибка: нарушение прав доступа при чтении по адресу #2
Даю подсказку: проверяйте успех загрузки текстуры из файла :-)

не смотреть
косяк с косой чертой в пути к файлу. Исправьте на "D:\\sprite.jpg".
ВСЕГДА проверяйте успешность загрузки и получения каких-либо ресурсов


Добавлено через 23 минуты
И на будущее хотелось бы отметить, что ошибки компиляции происходят на этапе компиляции.
У Вас же ошибка уже при запуске программы, то есть во время выполнения (в рантайме).

Ну и темы нужно называть информативнее.
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
15.07.2015, 12:13  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #3
Croessmah, спасибо вам, вы наверное на форуме единственный человек который разбирается в/интересуется SFML.
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 12:23     Ошибка: нарушение прав доступа при чтении по адресу #4
DelphiXE3, не единственный, да и дело тут не в sfml :-)
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
15.07.2015, 12:26  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #5
Croessmah, Опять та же ошибка,в консоли идут строками непонятные символы.Возможно нужны какие-то библиотеки для работы JPEG?
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 12:28     Ошибка: нарушение прав доступа при чтении по адресу #6
DelphiXE3, это в студии? Такое в ней бывает, если не так подцепить sfml.
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
15.07.2015, 12:31  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #7
Croessmah, да, у меня она долго не цеплялась, пока я не убрал SFML_STATIC из препроцессора.
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 12:34     Ошибка: нарушение прав доступа при чтении по адресу #8
DelphiXE3, http://www.cyberforum.ru/cpp-beginne...ad1421698.html
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
15.07.2015, 12:35  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #9
В Компоновщик->Ввод у меня стоит
"sfml-graphics.lib"
"sfml-window.lib"
"sfml-system.lib"
"sfml-audio.lib"
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 12:41     Ошибка: нарушение прав доступа при чтении по адресу #10
Также не перепутайте статические/динамические библиотеки и отладочные/релизные версии библиотек. Для статических нужен будет SFML_STATIC, и, может еще GLEW_STATIC

Добавлено через 2 минуты
DelphiXE3, ну у Вас динамические библиотеки. У Вас подключены релизные версии. Для Debug режима используйте библиотеки с суффиксом -d

Добавлено через 2 минуты
"sfml-graphics-d.lib"
"sfml-window-d.lib"
"sfml-system-d.lib"
"sfml-audio-d.lib"
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
15.07.2015, 12:52  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #11
Croessmah, Я все сделал как сказано но теперь вылазят ошибки

Ошибка 5 error LNK2005: "public: virtual __thiscall sf::Sprite::~Sprite(void)" (??1Sprite@sf@@UAE@XZ) уже определен в sfml-graphics-d.lib(sfml-graphics-d-2.dll) C:\Users\Євген\Documents\Visual Studio 2013\Projects\Проект2\Проект2\main.obj Проект2
Ошибка 6 error LNK2005: "public: __thiscall sf::String::~String(void)" (??1String@sf@@QAE@XZ) уже определен в sfml-system-d.lib(sfml-system-d-2.dll) C:\Users\Євген\Documents\Visual Studio 2013\Projects\Проект2\Проект2\main.obj Проект2
Ошибка 7 error LNK2001: эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы ""public: static class sf::Color const sf::Color::Red" (?Red@Color@sf@@2V12@B)" C:\Users\Євген\Documents\Visual Studio 2013\Projects\Проект2\Проект2\main.obj Проект2
Ошибка 8 error LNK2001: эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы ""public: static class sf::RenderStates const sf::RenderStates:efault" (?Default@RenderStates@sf@@2V12@B)" C:\Users\Євген\Documents\Visual Studio 2013\Projects\Проект2\Проект2\main.obj Проект2
Ошибка 9 error LNK1120: эхЁрчЁх°хээ√ї тэх°эшї ¤ыхьхэЄют: 2 C:\Users\ктухэ\Documents\Visual Studio 2013\Projects\╧ЁюхъЄ2\Debug\╧ЁюхъЄ2.exe Проект2

Добавлено через 3 минуты
И Это если поставить SFML_STATIC, а если убрать то уже ошибка : Запуск программы невозможен , так как отсутствует MSVCR110D.dll
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 13:12     Ошибка: нарушение прав доступа при чтении по адресу #12
SFML_STATIC Вам не нужен, у Вас динамические библиотеки.
Библиотек для VS2013 нет у них на сайте.
Студии нет, не пробовал, но, если верить информации с официального форума то помогает сборка sfml из исходников студией 2013
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
15.07.2015, 13:15  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #13
Croessmah, а в Dev C++ будет работать?

Добавлено через 11 секунд
Чисто ваше мнение
Croessmah
Модератор
Эксперт CЭксперт С++
13051 / 7314 / 814
Регистрация: 27.09.2012
Сообщений: 18,051
Записей в блоге: 3
Завершенные тесты: 1
15.07.2015, 13:18     Ошибка: нарушение прав доступа при чтении по адресу #14
DelphiXE3, у Вас там MinGW подцеплен же? Тогда придется скачать библиотеки для своей версии mingw. Если таких нет - собирать самому. У меня есть видео с инструкциями по сборке SFML для MinGW (не так давно записывал) могу скинуть, если решите собирать.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.07.2015, 18:10     Ошибка: нарушение прав доступа при чтении по адресу
Еще ссылки по теме:
Нарушение прав доступа при чтении по адресу C++
C++ Нарушение прав доступа при чтении по адресу
Нарушение прав доступа при чтении по адресу C++
Нарушение прав доступа при чтении по адресу C++
C++ Ошибка "нарушение прав доступа при чтении по адресу."

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

Или воспользуйтесь поиском по форуму:
DelphiXE3
22 / 22 / 1
Регистрация: 24.03.2013
Сообщений: 117
16.07.2015, 18:10  [ТС]     Ошибка: нарушение прав доступа при чтении по адресу #15
Croessmah, Скиньте пожалуйста.
Yandex
Объявления
16.07.2015, 18:10     Ошибка: нарушение прав доступа при чтении по адресу
Ответ Создать тему
Опции темы

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