Вопросы по теме 'realloc'

Сжатие с realloc
Я столкнулся с этим небольшим фрагментом кода в этом вопросе и хотел знать, Может ли функция realloc() когда-либо перемещать блок памяти в другое место, когда указываемое пространство памяти сжимается? int * a = malloc( 10*sizeof(int) );...
1014 просмотров
schedule 15.03.2024

Указатель внутри структуры перераспределяется нормально, но указатель на указатель внутри структуры не может перераспределиться с ошибкой недопустимого указателя
Работая над программой, которая требует частого выделения памяти, я столкнулся с поведением, которое не могу объяснить. Я реализовал обходной путь, но мне любопытно, почему моя предыдущая реализация не сработала. Вот такая ситуация:...
257 просмотров
schedule 14.10.2022

Распределение Realloc в C
Здравствуйте, я пытаюсь понять, как работает realloc, поэтому вот мой вопрос: Допустим, сначала мы вызываем malloc, чтобы выделить достаточно памяти для 1 int. int *p=malloc(sizeof(int)) затем мы вызываем realloc следующим образом:...
339 просмотров
schedule 11.11.2022

Почему этот realloc внутри функции не выполняется компилятором Intel?
Ниже показан фрагмент кода, написанный на C с целью перераспределения памяти внутри функции. Я хотел бы знать, почему это падает во время выполнения, а также эффективный способ сделать это. int main() { int *kn_row, *kn_col, *uk_row,...
91 просмотров
schedule 25.05.2024

Изменить размер массива внутри структуры
Я пытаюсь смоделировать стек (вталкивая и выталкивая значения в верхнюю часть стека), используя структуры и динамическое выделение памяти в C, и у меня есть эта структура: ... #define max 5 typedef struct stack { int stk[max]; int top;...
3100 просмотров
schedule 28.12.2023

Почему я получаю ошибку сегментации при использовании realloc()?
Эта небольшая тестовая программа считывает строки из командной строки, и я получаю ошибку seg. Может кто-нибудь помочь мне? Еще хочу спросить, чем realloc() отличается от malloc() ? Я имею в виду, я думаю, что realloc() намного умнее, так...
1835 просмотров
schedule 06.06.2024

c - realloc() для токенизированного массива: сигнал ошибки SIGABRT
В строке 56 я пытаюсь изменить размер массива: tokenArray = (char**) realloc(tokenArray, tokSize * (sizeof(char))); Я получаю сообщение об ошибке: (11972,0x7fff7ca4f300) malloc: * ошибка для объекта 0x100105598: неверная контрольная...
802 просмотров
schedule 08.10.2022

Многомерный массив в растущей памяти в C
Это мой код: #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct{ char ipaddr[20]; char filename[2048]; }iplog; int main(){ unsigned long numrec=0; iplog* e=(iplog*)calloc(1,sizeof(iplog)+1);...
38 просмотров
schedule 30.10.2022

Массив структур Malloc и Realloc
Я определяю тип структур typedef struct structs{ int freeSpace; } structs; Я создаю указатель на структуру structs* arrayOfStructs; Я выделяю память для массива размера 5 этой структуры arrayOfStructs = malloc(5 * sizeof...
227 просмотров
schedule 19.10.2022

C: использование realloc для повышения производительности с массивом структур
Я использую realloc для настройки размера массива структур, содержащих 3 точки x, y и z. Эта структура инкапсулируется внутри другой структуры, которая содержит массив, длину массива и «зарезервированное» значение, которое используется для стратегии...
689 просмотров
schedule 28.04.2024

Недопустимый следующий размер с функцией realloc
У меня есть динамическая структура, и я пытаюсь сделать realloc, чтобы сохранить в ней новую информацию, но когда я попытался это сделать, это не сработало... Я получил эту структуру: typedef struct { short int tipo; short int gravedad;...
68 просмотров
schedule 06.03.2024

Использование calloc() для создания массива динамических структур utmp
Я пытаюсь создать динамический массив в C, но я немного не понимаю, как это сделать. Во-первых, calloc(), кажется, дает мне странные результаты. У меня есть следующий код: struct utmp userRec; printf("%d\n", sizeof(userRec)); //should print size...
40 просмотров

Как освободить перераспределенную и выделенную память?
Как освободить память, которая когда-то была выделена вначале, а затем перераспределена и выделена сразу после этого? Этот ptr был моей попыткой, но valgrind говорит, что было 6 аллоков и 6 освобождений, но 90 байтов в 3 блоках определенно потеряны....
67 просмотров

Перераспределение массива символов (строки) по частям в C
Если я использую куски для перераспределения памяти, скажем, для каждых десяти символов, которые я читаю с консоли с помощью функции getchar() в C, и подсчитываю каждый новый символ (позицию) с помощью counter++, когда я закончу со словом, на котором...
51 просмотров
schedule 30.12.2023

Как использовать realloc для сокращения размера массива строк
Я попытался взять определенную строку, установить строку определенного размера, 50 символов, затем после ввода всех строк она отсортирует их, а затем перераспределит размеры от 50 символов до длины строки, которая пользователь написал, что если...
359 просмотров
schedule 03.06.2024