|
6 / 5 / 1
Регистрация: 02.10.2011
Сообщений: 111
|
||||||||||||||||||||||||||
Динамическое выделение памяти под массив структур (new/delete)24.03.2016, 16:49. Показов 2551. Ответов 7
Метки нет (Все метки)
Люди добрые, подскажите пожалуйста, где в моем коде закралась ошибка? Интернет перечитал, во всех примерах код, подобный моему работает, а у меня почему то нет. Не работает следующая функция:
В чем дело, подскажите пожалуйста? Что я делаю не так? Вся суть в том, что если элемент массива структур больше нуля, то при присвоении ему строки, память почему-то освобождается с ошибками. Если функцию
0
|
||||||||||||||||||||||||||
| 24.03.2016, 16:49 | |
|
Ответы с готовыми решениями:
7
Динамическое выделение памяти под массив Динамическое выделение памяти под массив Динамическое выделение памяти под массив |
|
694 / 304 / 99
Регистрация: 04.07.2014
Сообщений: 851
|
|
| 24.03.2016, 17:44 | |
|
0
|
|
|
Вездепух
12937 / 6804 / 1821
Регистрация: 18.10.2014
Сообщений: 17,218
|
|
| 24.03.2016, 18:48 | |
|
Бессмысленно гадать, где у вас в коде ошибка, пока вы не приведете мало-мальски осмысленный кусок кода. Что такое
prsAnnouncments? Почему в вашем посте не видно полного детального объявления этого типа?Разумеется, угадать "на кофейной гуще", что именно у вас там происходит труда не составит - ваша wcscpy переполняет целевой буфер, рушит динамическую память и все потом падает. Но тем не менее - потрудитесь постить код целиком.И, как уже было сказано, удаление массивов в С++ делается через delete [].
0
|
|
|
6 / 5 / 1
Регистрация: 02.10.2011
Сообщений: 111
|
||||||||||||||||
| 25.03.2016, 09:55 [ТС] | ||||||||||||||||
|
Извиняюсь. Вот более развернутая версия моего примера.
файл maincode.cpp
файл resource.h
0
|
||||||||||||||||
|
Вездепух
12937 / 6804 / 1821
Регистрация: 18.10.2014
Сообщений: 17,218
|
|
| 25.03.2016, 11:24 | |
Сообщение было отмечено lordimid как решение
Решение
Ну так значит в первой версии кода вы нас просто обманывали? Там доступ в
wcscpy ведется через pan, а здесь вдруг стало pan+i. Что это за неожиданные различия? В чем дело?В последнем варианте все ясно: вы выделяете масив размера i, а потом доступаетесь к элементу pan+i - это очевидный выход за пределы массива. Потому все и падает.P.S. В каком это новом стандарте С++ вы усмотрели разрешение не указывать [] в delete - я не знаю. Ничего подобного там нет.
1
|
|
|
6 / 5 / 1
Регистрация: 02.10.2011
Сообщений: 111
|
|
| 25.03.2016, 17:05 [ТС] | |
|
TheCalligrapher
Да вы правы, я перепутал. Это размер массива не нужно указывать в скобках после delete []. Спасибо за подсказку, что-то у меня глаз замылился. Действительно проблема была в том, что я выходил за пределы массива. Блин надо же было на таком пустяке два дня убить. Еще раз благодарю. PS А по поводу того, что я немного функцию изменил, то это не обмана ради. Просто у меня одинаковая ошибка появлялась, поэтому я и выложил последний вариант этой функции. Так что не серчайте, обманывать я вас не хотел .
0
|
|
| 25.03.2016, 17:05 | |
|
Помогаю со студенческими работами здесь
8
Выделение памяти под массив структур
Динамическое выделение памяти под массив int Динамическое выделение памяти под двумерный массив Динамическое выделение памяти под двумерный массив Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|