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

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

Войти
Регистрация
Восстановить пароль
 
danilchyk
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 12
#1

Нарушение прав доступа при записи - C++

18.09.2012, 00:16. Просмотров 482. Ответов 2
Метки нет (Все метки)

Привет всем! Извините за тупизм но у меня проблема.
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
#include <iostream>
using namespace std;
 
void f(char* str)
{
    int length = strlen(str);
 
    for (int i = 0; i < length; i++)
        if (i % 2 == 0)
            str[i] = '+';
}
 
int main()
{
    char* s = new char[255];
    s = "just a string";
 
    f(s);
 
    cout << s << endl;
    
    system("pause");
    return 0;
}
В 10 строке выбивает ошибку типа "Нарушение прав доступа при записи". Хоть убей не могу понять почему.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.09.2012, 00:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нарушение прав доступа при записи (C++):

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

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

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

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

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

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

2
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
18.09.2012, 00:24 #2
в 16 строке s начинает указывать на константную строку, которую изменять нельзя.
по идее не должно было компилится, т.к. указатель на константную строку нельзя присваивать указателю на неконстантную. где-то на форуме даже тема была о том, что такой код компилится.
вот это ошибка вроде бы:
C++
1
2
char* s = 0;
s = "dsffsfsfsf";
но раз скомпилилось, это еще не значит что будет работать. попытка модификации строки через этот указатель приводит к тому, что пытаются изменить то, что есть константа. вот в 10 строке как раз это и происходит.

C++
1
2
3
4
//вместо
s = "just a string";
//в этом случае нужно
strcpy(s, "just a string");
0
danilchyk
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 12
18.09.2012, 09:18  [ТС] #3
Спасибо за подробное описание Следующий раз буду внимательнее.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.09.2012, 09:18
Привет! Вот еще темы с ответами:

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

Нарушение прав доступа при записи по адресу - C++
Функция не дописана. Исключение находит в этой begin-&gt;elem.arrint = s; нарушение прав доступа при записи по адресу 0xCDCDCDCD. Работаю...

Нарушение прав доступа при записи по адресу - C++
Как исправить ошибку?? Первый этап обработки исключения по адресу 0x0F484AF5 (msvcr110d.dll) в ConsoleApplication16.exe: 0xC0000005:...

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


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

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

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