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

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

Войти
Регистрация
Восстановить пароль
 
KostyaKulakov
Заблокирован
#1

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

19.02.2013, 12:13. Просмотров 296. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
void testfunc(char*& test)
{
    test[0] = 's';
}
 
int main()
{
    char* test = "Test";
 
    testfunc(test);
 
    std::cout << test << std::endl;
    
    return 0;
}
не работает программа, почему?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2013, 12:13     Нарушение прав доступа при записи
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
coloc
погромист
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
19.02.2013, 12:15     Нарушение прав доступа при записи #2
Потому что ты хочешь изменить константу.
KostyaKulakov
Заблокирован
19.02.2013, 12:19  [ТС]     Нарушение прав доступа при записи #3
Цитата Сообщение от coloc Посмотреть сообщение
Потому что ты хочешь изменить константу.
где именно она тут? или тут неявный const, который могущественный компилятор вставил за меня ;С?
coloc
погромист
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
19.02.2013, 12:23     Нарушение прав доступа при записи #4
char* test указывает на константную область памяти, которую нельзя изменить, т.е. "Test".
KostyaKulakov
Заблокирован
19.02.2013, 12:25  [ТС]     Нарушение прав доступа при записи #5
Цитата Сообщение от coloc Посмотреть сообщение
char* test указывает на константную область памяти, которую нельзя изменить, т.е. "Test".
как это можно исправить?
coloc
погромист
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
19.02.2013, 12:27     Нарушение прав доступа при записи #6
Передавай массив символов

Добавлено через 41 секунду
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
void testfunc(char test[])
{
    test[0] = 's';
}
 
int main()
{
    char test[] = "Test";
 
    testfunc(test);
 
    std::cout << test << std::endl;
    
    return 0;
}
Yandex
Объявления
19.02.2013, 12:27     Нарушение прав доступа при записи
Ответ Создать тему
Опции темы

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