Вопросы по теме 'dynamic-allocation'

Как мне выделить двумерный массив с постоянной памятью? Как использовать его для доступа к строкам и столбцам? Дайте мне пример
Я создал 2-мерный массив, который выглядит следующим образом int i,j,lx,ly;// lx,ly are the row and column respectively double** a; a=(double**) malloc((lx+2)*sizeof(double)); a[0]= (double*) malloc((lx+2)*(ly+2)*...
3008 просмотров
schedule 09.10.2023

обработка сбоев при получении ресурсов
После многих лет программирования у меня не было ситуации, когда разумный malloc или new потерпели бы неудачу (возможно, потому, что мои malloc действительно разумны), хотя я всегда проверяю это. В моем случае приложения должны изящно (надеюсь)...
60 просмотров
schedule 06.07.2023

c++ Параметры объекта: полиморфизм, семантика значений, время жизни объекта?
При переходе с C# на C++ я получаю много рекомендаций по использованию семантики значений, где это возможно. Практически гарантировано, что если я отправлю вопрос с указателем в любом месте, кто-нибудь придет и предложит вместо этого значение. Я...
483 просмотров

Выделить массив 2D-символов malloc или calloc
Недавно я решил освежить свои знания C (то немногое, что у меня осталось). Я довольно быстро понял, что первым навыком , который стал туманным, было управление памятью. Проклятый. Я решил, что лучше всего будет написать несколько бессмысленных...
6445 просмотров
schedule 07.03.2024

SegFault в динамически выделенном массиве структур, C
typedef struct { double x; double y; long out_x; long out_y; } coords; typedef struct { char name[FIGURE_LEN + 1]; int coordcount, size_tracker; coords *coordinate; } fig; fig figure; fig * figpoint; это функции, которые...
961 просмотров

при заполнении std::vector по значению будут ли удалены динамически выделенные указатели объектов?
Возможный дубликат: Почему вызывает ли использование «нового» утечки памяти? Я новичок в STL, и я читал, что хорошей практикой обычно является сохранение векторов объектов, а не векторов указателей на объекты. В попытке...
878 просмотров

Как динамически выделять память для char** в C
Как мне динамически выделять память для списка символов ** в этой функции? В основном идея этой программы заключается в том, что я должен прочитать список слов из файла. Я не могу предположить максимальное количество строк или максимальную длину...
9889 просмотров
schedule 26.08.2022

Попытка динамически выделить многомерный массив в C приводит к сбою
По множеству причин я хотел бы размещать многомерные массивы в смежных участках памяти. Я могу сделать это, выделив их вручную, например: t.versions=(char***)malloc(sizeof(char**)*4); t.versions[0]=(char**)malloc(sizeof(char*)*t.size*4);...
223 просмотров

Динамическое выделение памяти кажется мгновенным в режиме отладки, но постепенным в режиме выпуска.
У меня есть большой динамически распределяемый массив (C++, MSVC110), и я инициализирую его следующим образом: try { size_t arrayLength = 1 << 28; data = new int[arrayLength]; for (size_t i = 0; i < arrayLength; ++i) {...
568 просмотров
schedule 26.01.2024

Динамически выделенная память должна быть удалена в С++?
Скажем, у меня есть list<TreeNode> в моей программе. Каждый раз, когда я использую new для динамического выделения класса TreeNode и присоединения его к списку; когда программа заканчивается, список исчезает. Однако я не уверен, что все...
179 просмотров
schedule 05.03.2023

C динамически выделяемый указатель на основную функцию
Я не могу понять, как заставить мой указатель argv сохранять свою память, которую я динамически выделяю в другой функции, называемой parseCommand. Мне нужно вызвать parseCommand, выделить необходимую память для проанализированных строк, а затем...
162 просмотров
schedule 11.06.2023

Удаляет ли оператор free() адрес из динамической переменной?
Рассмотрим ниже программу: int main () { int *p, *r; p = (int*)malloc(sizeof(int)); cout<<"Addr of p = "<<p <<endl; cout<<"Value of p = "<<*p <<endl; free(p); cout<<"After...
146 просмотров
schedule 15.04.2024

Получить размер (в байтах) объекта в куче
Я знаю, что вы можете использовать MemoryLayout<T>.size для получения размера типа T . Например: MemoryLayout<Int32>.size // 4 Однако для экземпляров класса (объектов) MemoryLayout<T>.size возвращает размер ссылки на...
8270 просмотров

Попытка использовать realloc (), выгрузка ядра
Я пытаюсь написать небольшую программу, которая использует realloc (), getchar () и некоторую арифметику указателей для хранения массива символов в памяти. У меня есть функция под названием «inputArray» (в convert.c), которая получает указатель на...
567 просмотров
schedule 05.08.2022

Как исправить выделенную память из взлома структуры другим методом?
Я разрабатываю драйвер на C для связи, и обмен сообщениями не имеет фиксированного размера. Рекомендация коммуникационной шины — использовать структуры для нескольких тем, что также относится и к моему случаю. Моя 1-я проблема: я должен продолжать...
137 просмотров
schedule 07.12.2023

Является ли завершение программы без освобождения всех динамически выделенных ресурсов рискованным?
Я знаю, что ресурсы, выделенные стеком, освобождаются в обратном порядке, поскольку они были выделены в конце функции как часть RAII. Я работаю над проектом и выделяю много памяти «новым» из библиотеки, которую использую, и тестирую материал. Я не...
133 просмотров
schedule 04.07.2022