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

Ошибка сегментирования. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отделить в дроби знаменатель от числителя http://www.cyberforum.ru/cpp-beginners/thread286691.html
Доброго времени суток. Народ, подскажите плиз, как реализовать задачу - нужно отделить в дроби знаменатель от числителя и закинуть их в отдельные интовые переменные разрядность заранее не известна. Заранее большое спасибо...
C++ что означает данный цикл? Здравствуйте, подскажите пожалуйста что означает данный цикл? for (;;) { } http://www.cyberforum.ru/cpp-beginners/thread286690.html
C++ Найти ряд
Здравствуйте! Помогите пожалуйста, надо написать программку чтобы задать ряд - sin(1*1)/1! + (sin(2*1)+sin(2*2))/2! + (sin(3*1)+sin(3*2)+sin(3*3))/3! + (sin(4*1)+sin(4*2)+sin(4*3)+sin(4*4))/4! + ..... и так до 10. Может кто подскажет как это сделать или натолкнет на мысль? С синусом не знаю как это сделать.
Взаимное расположение линий C++
Здравствуйте! Не могу реализовать математически взаимное расположение линий. Сама программа заключается в следующем: написать программу определения взаимного расположения следующих линий-прямая, окружность, парабола. Каждый тип линии определяется своим классом. Определение взаимного расположения реализовать через функцию.
C++ разрядность команд http://www.cyberforum.ru/cpp-beginners/thread286669.html
Добрый день, Всех с праздником! Подскажите, пожалуйста, определение термина "разрядность команд". P.S. искал в интернете, ничего интересного об этом не нашел.
C++ Как целочисленный массив X из n элементов разбить на m фрагментов? Целочисленный массив X из n элементов разбит на m фрагментов. В целочисленном массиве K из m элементов хранятся длины соответствующих фрагментов (все K различны, их сумма равна n). Упорядочить массив K по возрастанию, переставив соотвествующие фрагменты в массиве X. Сортировку произвести методом вставкой; Препод на пальцах объяснял так: к примеру есть массив X=1,2,3,4,5,6,7,8,9,10. разделили... подробнее

Показать сообщение отдельно
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
01.05.2011, 18:43     Ошибка сегментирования.
ZloyVolkey, Именно в ней.

C++
1
2
3
4
5
        int w[v+1][v+1];                        // Матрица смежностей
 
        for(int i = 1; i <= v; i++)             // Очищаем матрицу от "мусора".
                for(int j = 1; j <= v; j++)
                        w[i][j] = 0;
Вот что тут происходит? Вы объявляете статический двумерный массив размером v+1 на v+1. В цикле пропуская нулевой элемент вы идете начиная с первого (второго) - и идете до <= v.
То есть в примере с обычным массивом.
int arr[5] вы идете по элементам 1, 2, 3, 4, 5 - НО 5 элемента нету и не должно быть (т.к. нумерация ведь с нуля начинается). В итоге вы пишите в неизвестную область памяти.

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