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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
Beliy_shum
1 / 1 / 0
Регистрация: 10.08.2008
Сообщений: 65
#1

При запуске из среды программа работает, при запуске выполняемого файла выдает ошибку - C++

25.09.2008, 22:33. Просмотров 1706. Ответов 8
Метки нет (Все метки)

При запуске из среды программа работает, при запуске выполняемого файла выдает ошибку

Добавлено через 1 минуту 35 секунд
как исправить ошибки в названии темы?
там должно было быть исполняемого файла
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2008, 22:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При запуске из среды программа работает, при запуске выполняемого файла выдает ошибку (C++):

Почему программа выдает ошибку при первом запуске, а дальше работает нормально? Код C - C++
Подскажите почему программа выдает ошибку при первом запуске, а дальше работает нормально? #include <iostream> #include <cstdlib> ...

Ребят Незнаю что делать при запуске на компилирование выдает ошибку.Кто понимает что не так скажите а если не затруднит исправьте ошибку - C++
Разговаривал с двумя преподами говорят что проект не правильно создавал,хотя все правильно из группы спрашивал у парней говорят что не...

Не работает программа при запуске в Windows через командную строку - C++
Дали задание скомпилить cmake под Linux. Там все получилось. Как доп.задание дали перенести и скомпилить cmake на windows через командную...

Программа работает, но при выводе определенной комбинации выдает ошибку - C++
Помогите начинающему программисту :) Программа работает, но если ввести все непростые числа, то выдает ошибку "поврежденная куча". Во всех...

При запуске программы содержимое файла, с которым она работает, обнуляется - C++
Я хочу сделать программу, которая будет записывать данные в файл а потом, при следующем запуске, считывать. Но я столкнулся с проблемой:...

При запуске компиляци выдает ошибка - C++
При запуске компиляци выдает ошибка, не удается найти указанный файл? подскажите пж, как исправить можно, у мя visual studio 2010??

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
XuTPbIu_MuHTAu
Эксперт С++
2224 / 739 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
25.09.2008, 22:40 #2
У тебя где-то ошибка в распределении памяти. Про ассерты подробнее прочитай,документация где-то бывает. (встречал ASSERT_VALID ?вот это одна из таких штук =) ) А так,проверяй код.

Добавлено через 52 секунды
поправил заголовок
Beliy_shum
1 / 1 / 0
Регистрация: 10.08.2008
Сообщений: 65
25.09.2008, 23:02  [ТС] #3
эмпирическим путём установленно что её вызывает строка delete[] neuro::inputs;
300 раз она выполняеться, а после вылезает ошибка.
????????????????????? это может помочь расследованию?

Добавлено через 4 минуты 53 секунды
а как же мне быть???????? неужели мелкомягкие бросили меня, и даже не хотят указать мне место кода, после которого выполнение прекращается??????????????????????
XuTPbIu_MuHTAu
Эксперт С++
2224 / 739 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
25.09.2008, 23:03 #4
Цитата Сообщение от Beliy_shum Посмотреть сообщение
это может помочь расследованию?
Расставим точки над "i". Расследуешь ты я так даже кода в глаза не видел. В любом случае,настоятельно рекомендую поковыряться. Это интересно и полезно. Ошибка вряд ли фатальная(в том смысле,что таки ошибки часто легко правятся)

p.s вот лично я уверен,что оператор delete должен вызываться столько же раз,сколько оператор new.
Beliy_shum
1 / 1 / 0
Регистрация: 10.08.2008
Сообщений: 65
25.09.2008, 23:27  [ТС] #5
если чесна я не понимаю как мне расследовать.........
по моим представлениям результат действия не зависит от количества повторов этого действия...... канечно можно спорить со мной, но суть не в том.

вот сейчас я интуитивно нашёл место которое вызывает ошибку
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/*delete neuro::inputs;
    delete neuro::neurons;
    delete neuro::outputs;
 
    neuro::inputs = new double[inputs_count];
    neuro::neurons = new double[neurons_count];
    neuro::outputs = new double[outputs_count];
    
    delete neuro::input_weights;
    delete neuro::weights;
    delete neuro::output_weights;
    
    neuro::input_weights = new double[inputs_count*neurons_count];
    neuro::weights = new double[neurons_count*neurons_count];
    neuro::output_weights = new double[neurons_count*outputs_count];*/
и избавился от него. немного изменил код что без этого действия уже можно обойтись.

эта функция у меня в программе вызывается много много раз.......

всё началось с того что функция была такая -
C++
1
2
3
4
5
6
7
    neuro::inputs = new double[inputs_count];
    neuro::neurons = new double[neurons_count];
    neuro::outputs = new double[outputs_count];
    
    neuro::input_weights = new double[inputs_count*neurons_count];
    neuro::weights = new double[neurons_count*neurons_count];
    neuro::output_weights = new double[neurons_count*outputs_count];
соответственно она жрала память(я забыл возвращать её)

я её изменил на выше указанную и получил ошибку(((((


и я могу эту ошибку находить только интуитивным путём, или что ещё хуже - эмпирическим...
вот скажи мне теперь я нашёл ошибку или нет? теперь моя прога работает.
XuTPbIu_MuHTAu
Эксперт С++
2224 / 739 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
25.09.2008, 23:36 #6
вызывай delete [] neuro::inputs;
и аналогично для остальных.
Beliy_shum
1 / 1 / 0
Регистрация: 10.08.2008
Сообщений: 65
25.09.2008, 23:44  [ТС] #7
я пробовал оба варианта синтаксиса - delete [] neuro::inputs;
и delete neuro::inputs;
ошибка не уходит(не уходила)

Добавлено через 1 минуту 18 секунд
собстна сейчас ошибки нет, но я всё больше уверяюсь в том что программирование сродни шаманским пляскам с бубном. такиеже отсутсвующие причинно-следственные связи
XuTPbIu_MuHTAu
Эксперт С++
2224 / 739 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
26.09.2008, 00:11 #8
Цитата Сообщение от Beliy_shum Посмотреть сообщение
я всё больше уверяюсь в том что программирование сродни шаманским пляскам с бубном. такиеже отсутсвующие причинно-следственные связи
... ошибаешься,ошибаешься,ошибаешься. Если ты не видишь связи,- не значит,что ее нет.(вот только не вспоминайте суслика ). Иногда это все действительно похоже на что-то безумное. Но это только так кажется... (Все эти гневные слова про тупую машину,про то,что "у меня все правильно",а не работает.эх...)
Beliy_shum
1 / 1 / 0
Регистрация: 10.08.2008
Сообщений: 65
26.09.2008, 13:19  [ТС] #9
Цитата Сообщение от XuTPbIu_MuHTAu Посмотреть сообщение
... ошибаешься,ошибаешься,ошибаешься. Если ты не видишь связи,- не значит,что ее нет.(вот только не вспоминайте суслика ). Иногда это все действительно похоже на что-то безумное. Но это только так кажется...
канечно же это мне так только КАЖЕТСЯ что связи нет.....
но эта всязь не мной создана и у меня нет инструментария эту связь убрать, кроме интуитивного или шаманского программирования....
в этот раз получилось, а что вседующий раз мне мелкомягкие предложат?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.09.2008, 13:19
Привет! Вот еще темы с ответами:

Создал программу Вычислятор. Но при запуске выдает сбой! - C++
Помогите найти логические ошибки! Я новичок учусь вторую неделю. #include <iostream> #include <string> #include <vector> ...

При запуске выдает expression stream !=null; что делать? - C++
задача такая: написать прогу, которая будет решать систему линейных уравнений методом гаусса. ошибок при компиляции не выдает, а вот при...

Укажите на ошибку - при запуске runtime error - C++
#include <iostream> #include <cmath> #include <iomanip> #include <fstream> #include <string> using namespace std; double...

Выбивает ошибку при запуске в «планировщике заданий» - C++
Мне нужно запустить эмуляцию клавиш, а в программе нужно нажать CTRL + SHIFT + ENTER, я хочу все автоматизировать, чтобы система делала...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
26.09.2008, 13:19
Ответ Создать тему
Опции темы

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