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

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

Войти
Регистрация
Восстановить пароль
 
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 1
#1

нарушение прав доступа при записи. объясните, почему? и как избежать? - C++

22.06.2013, 20:37. Просмотров 379. Ответов 8
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
void Stroka::F1(char*word)
{
char *point;
if((point=strstr(data,word)))
{
    strrev(word);
}
}
нарушение прав доступа при записи. объясните, почему? и как избежать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2013, 20:37     нарушение прав доступа при записи. объясните, почему? и как избежать?
Посмотрите здесь:

Нарушение прав доступа при записи. Висящий указатель нашел, но не знаю как исправить ситуацию - C++
Здравствуйте! Имеется программа поиска коллизий в хэш-функции #include <stdio.h> #include <stdlib.h> #define n 30 //размер...

Нарушение прав доступа при записи - C++
#include <iostream> void testfunc(char*& test) { test = 's'; } int main() { char* test = "Test";

Нарушение прав доступа при записи - C++
Создаю свой класс ошибок следующим образом: class SecureTransportException { private: SecureLibraryErrorCode errorCode_; ...

Нарушение прав доступа при записи - C++
void FilterStamp() { char ch; cout<<"Введите Да или Нет: "; scanf_s("%s",ch); cout<<endl; l1=first; while(l1!=0)...

Нарушение прав доступа при записи - C++
Пытаюсь написать класс, который бы выполнял инициализацию шрифта в directx и печатал строку на экран. Написал рабочий вариант, где...

Нарушение прав доступа при записи - C++
Есть следующий код: class A { public: virtual someFuncA() = 0; }; class B : public A

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NewT
Заблокирован
23.06.2013, 08:05     нарушение прав доступа при записи. объясните, почему? и как избежать? #2
Потому что ты хочешь изменить константу.

Добавлено через 57 секунд
char* point указывает на константную область памяти, которую нельзя изменить, т.е. "point ".
Croessmah
Модератор
Эксперт CЭксперт С++
13057 / 7320 / 817
Регистрация: 27.09.2012
Сообщений: 18,066
Записей в блоге: 3
Завершенные тесты: 1
23.06.2013, 09:15     нарушение прав доступа при записи. объясните, почему? и как избежать? #3
@NewT, Из данного контекста нельзя сказать на что указывает point, ибо неизвестно на что указывает data.
NewT
Заблокирован
23.06.2013, 09:17     нарушение прав доступа при записи. объясните, почему? и как избежать? #4
ну в основном только это может быть причиной
или же
Цитата Сообщение от NewT Посмотреть сообщение
ы хочешь изменить константу.
где то в коде
Croessmah
Модератор
Эксперт CЭксперт С++
13057 / 7320 / 817
Регистрация: 27.09.2012
Сообщений: 18,066
Записей в блоге: 3
Завершенные тесты: 1
23.06.2013, 09:30     нарушение прав доступа при записи. объясните, почему? и как избежать? #5
В данном случае без разницы, ибо значения, на которые point не изменяются в данном коде
NewT
Заблокирован
23.06.2013, 09:33     нарушение прав доступа при записи. объясните, почему? и как избежать? #6
я думаю тут только автор знает что у него и где так как дана только процедура
Croessmah
Модератор
Эксперт CЭксперт С++
13057 / 7320 / 817
Регистрация: 27.09.2012
Сообщений: 18,066
Записей в блоге: 3
Завершенные тесты: 1
23.06.2013, 09:35     нарушение прав доступа при записи. объясните, почему? и как избежать? #7
Возможно word указывает на константный строковый литерал и креш происходит при strrev.
Ab
75 / 75 / 1
Регистрация: 03.05.2012
Сообщений: 161
23.06.2013, 09:38     нарушение прав доступа при записи. объясните, почему? и как избежать? #8
С point здесь всё в порядке. Меняется в этом коде строка по адресу word, ее и надо смотреть.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2013, 13:50     нарушение прав доступа при записи. объясните, почему? и как избежать?
Еще ссылки по теме:

Нарушение прав доступа при записи - C++
Доброго времени суток всем! Перечитал много тем на форуме и в интернете. Никак не могу решить свою проблему. Мне нужно сравнить символ...

Нарушение прав доступа при записи - C++
Всем привет, нужно было сделать справочник, atoi(a) выделяет как ошибку, ЧЯДНТ? #include <iostream> #include <fstream> #include...

Нарушение прав доступа при записи - C++
Привет всем! Извините за тупизм но у меня проблема. #include <iostream> using namespace std; void f(char* str) { int length =...

Нарушение прав доступа при записи по указателю - C++
суть: при отладке появляется ошибка: "Необработанное исключение в "0x00f31967" в "13 laba.exe": 0xC0000005: Нарушение прав доступа при...


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

Или воспользуйтесь поиском по форуму:
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 1
23.06.2013, 13:50  [ТС]     нарушение прав доступа при записи. объясните, почему? и как избежать? #9
Цитата Сообщение от Croessmah Посмотреть сообщение
Возможно word указывает на константный строковый литерал и креш происходит при strrev.
в точку. спасибо
Yandex
Объявления
23.06.2013, 13:50     нарушение прав доступа при записи. объясните, почему? и как избежать?
Ответ Создать тему
Опции темы

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