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

Segmentation fault - C++

Восстановить пароль Регистрация
 
v_l
0 / 0 / 0
Регистрация: 25.06.2013
Сообщений: 17
15.07.2013, 01:03     Segmentation fault #1
Здравствуйте.
Нужно динамически получить такое:
C++
1
char * a[] = {"abc", NULL};
Пробую:
C++
1
2
3
4
5
6
7
char ** a;
a = new char*[2];
a[0] = new char[4];
... // put "abc" into a[0]
 
a[1] = new char;
a[1] = NULL;
Segmentation fault

В общем как этот NULL правильно в конец положить?

Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2013, 01:03     Segmentation fault
Посмотрите здесь:

C++ Segmentation fault :(
Программа выводит segmentation fault! C++
C++ string segmentation fault
Segmentation fault (iterator) C++
C++ Segmentation fault
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
15.07.2013, 01:25     Segmentation fault #2
Цитата Сообщение от v_l Посмотреть сообщение
a[1] = NULL;
утечка памяти. Но сегфолта от неё быть не должно.
Крайне вероятно, что в промежутке между new и delete ты как-то выходишь за пределы выделенных массивов.
покажи весь код.
v_l
0 / 0 / 0
Регистрация: 25.06.2013
Сообщений: 17
15.07.2013, 09:23  [ТС]     Segmentation fault #3
C++
1
2
3
4
5
char ** a;
a = new char*[2];
a[0] = new char[1];
a[0][0] = 'q';
a[1] = NULL;
тоже seg fault
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11800 / 6779 / 765
Регистрация: 27.09.2012
Сообщений: 16,829
Записей в блоге: 2
Завершенные тесты: 1
15.07.2013, 09:31     Segmentation fault #4
Цитата Сообщение от v_l Посмотреть сообщение
тоже seg fault
А полностью код?
v_l
0 / 0 / 0
Регистрация: 25.06.2013
Сообщений: 17
15.07.2013, 09:35  [ТС]     Segmentation fault #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <cstring>
 
int main()
{
char ** a;
a = new char*[2];
a[0] = new char[1];
a[0][0] = 'q';
a[1] = NULL;
return 0;
}
кстати компилю в линуксе g++
Tulosba
:)
Эксперт C++
4377 / 3220 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
15.07.2013, 10:40     Segmentation fault #6
Цитата Сообщение от v_l Посмотреть сообщение
Нужно динамически получить такое:
C++
1
char * a[] = {"abc", NULL};
C++
1
2
3
char** a = new char*[2];
a[0] = "abc";
a[1] = NULL;
Yandex
Объявления
15.07.2013, 10:40     Segmentation fault
Ответ Создать тему
Опции темы

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