Результаты поиска по запросу "malloc"
@YamahaSV Вы можете объявлять и инициализировать переменные вне функций, но у вас не может быть простых назначений. Так что ты не можешь писать
struct variables { unsigned int counter; char *bra; unsigned int maxb; int *findtheking; unsigned int numoright; }; int getlen = 0; // I give getlen a value in another function int solo = 0; mat.bra = (char*)malloc(sizeof(char)*getlen); mat.bra = ...
- Пит
я есть несколько связанных вопросов об управлении выровненными блоками памяти. Кроссплатформенные ответы были бы идеальными. Однако, поскольку я почти уверен, что кросс-платформенного решения не существует, я в основном интересуюсь Windows и ...
Что произойдет, если я использую malloc дважды для одного и того же указателя (C)?
Скажем, например, я создал указатель newPtr, и я использую malloc (некоторый размер), а затем позже я снова использую malloc (некоторый размер) с тем же указателем. Что происходит? Создаю ли я второй блок памяти того же размера, что и первый? ...
чтение файла CSV в массив массива
Я начинаю кодировать на C. Мой код выглядит следующим образом: #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_STR_LEN 256 #define MAX_BOOKS 256 struct book{ int ID; char *name; char *dateIn; char *dateOut; }; struct book ...
В Linux вы можете использовать malloc_usable_size, чтобы узнать, сколько памяти вы можете использовать. На MacOS и других платформах BSD вы можете использовать malloc_size. Пост, связанный выше, имеет полные примеры обоих этих методов.
# include <stdio.h> # include <stdbool.h> # include <string.h> # include <stdlib.h> int main () { char * buffer; buffer = malloc (2); if (buffer == NULL){ printf("big errors"); } strcpy(buffer, "hello"); printf("buffer is %s\n", buffer); ...
Хорошая причина называется виртуальными таблицами. Объекты типов, которые имеют виртуальные методы, имеют таблицу указателей, указывающих на адрес реальных виртуальных методов, которые будут вызваны. Это так называемые виртуальные таблицы или виртуальные таблицы.
жный дубликат: C ++: почемуnew нужно? [https://stackoverflow.com/questions/4904762/c-why-is-new-needed] Почему я не могу использовать malloc для выделения пространства для моих объектов, когда они являются детьми класса, содержащего виртуальные ...
за исключением случая, когда malloc не удалось
асно ли делать что-то вроде следующего? #include <stdio.h> #include <malloc.h> #include <string.h> int main(void) { char* msg; strcpy(msg, "Hello World!!!"); //<--------- printf("%s\n", msg); return 0; }Или следует использовать следующее? char* ...
Ссылка не работает
я есть короткая программа, которая генерирует связанный список, добавляя к нему узлы, а затем освобождает память, выделенную связанным списком. Valgrind не сообщает об ошибках утечки памяти, но процесс продолжает удерживать выделенную память. Я ...
Как free и malloc работают в C?
Я пытаюсь выяснить, что случилось бы, если бы я попытался освободить указатель «из середины», например, посмотрите на следующий код: char *ptr = (char*)malloc(10*sizeof(char)); for (char i=0 ; i<10 ; ++i) { ptr[i] = i+10; } ++ptr; ++ptr; ++ptr; ...
выделить буфер и расширить его, когда он заполнится.
я хочу прочитать строку произвольной длины из командной строки, как лучше всего это сделать? На данный момент я делаю это: char name_buffer [ 80 ]; int chars_read = 0; while ( ( chars_read < 80 ) && ( !feof( stdin ) ) ) { name_buffer [ ...