malloc

Czy rzucę wynik malloca?

W to pytanie , ktoś zasugerował w komentarz, że powinienem nie rzut wyniku malloc, czyli int *sieve = malloc(sizeof(int) * length); Zamiast: int *sieve = (int *) malloc(sizeof(int) * length); Dlaczego miałoby tak być?

Jak działają malloc () i free ()?

Chcę wiedzieć, jak działają malloc i free. int main() { unsigned char *p = (unsigned char*)malloc(4*sizeof(unsigned char ... out << p; return 0; } Będę bardzo wdzięczny, jeśli odpowiedź jest dogłębna na poziomie pamięci, jeśli to możliwe.

Różnica między malloc i calloc?

Jaka jest różnica między zrobieniem: ptr = (char **) malloc (MAXELEMS * sizeof(char *)); Lub: ptr = (char **) calloc (MAXELEMS, sizeof(char*)); Kiedy jest to dobry pomysł, aby używać calloc zamiast malloc lub odwrotnie?

Co tak naprawdę się dzieje, gdy nie jesteś wolny po malloc?

To było coś, co przeszkadzało mi od wieków. Wszyscy jesteśmy uczeni w szkole (przynajmniej ja byłem), że musisz uwolnić każd ... kilka pamięci, które są przydzielone, ale tylko uwolnione w ramach zakończenia procesu? Jeśli tak, to jaka jest alternatywa?

Dlaczego malloc + memset jest wolniejszy niż calloc?

Wiadomo, że calloc różni się od malloc tym, że inicjalizuje przydzieloną pamięć. Z calloc, Pamięć jest ustawiona na zero. Z m ... w kodzie 2 daje taki sam wynik. Moje pytanie brzmi: dlaczego jest malloc+memset o wiele wolniej niż calloc? Jak to zrobić?

Dlaczego stosowanie alloca() nie jest uważane za dobrą praktykę?

alloca() przydziela pamięć ze stosu, a nie stosu, co ma miejsce w malloc(). Więc, kiedy wracam z rutyny, pamięć zostaje uwoln ... e prowadzi do wszelkiego rodzaju problemów z pamięcią. Dlaczego stosowanie alloca() jest zniechęcane pomimo powyższych cech?

W jaki sposób malloc() jest implementowane wewnętrznie? [duplikat]

To pytanie ma już odpowiedź tutaj: Jak działają malloc () i free ()? ... program i widzę wiele sbrk wywołań systemowych, robiąc man sbrk mówi o tym, że jest używany w malloc(), ale niewiele więcej.

Programowanie w C: malloc () wewnątrz innej funkcji

Potrzebuję pomocy przy malloc() wewnątrz innej funkcji. Przekazuję wskaźnik i Rozmiar do funkcji z mojego main() i chciał ... urn status; } WYJŚCIE PROGRAMU: Point1: Memory allocated ptr: 262144 bytes Point2: Memory allocated input_image: 0 bytes

Ustawianie zmiennej NA NULL po free

W mojej firmie istnieje reguła kodowania, która mówi, że po zwolnieniu dowolnej pamięci, zresetuj zmienną do NULL. Na przykła ... ma sensu w takich przypadkach, zamierzam podjąć się tego z "zespołem jakości", aby usunąć tę regułę kodowania. Proszę o radę.

Czy malloc leniwie tworzy strony pomocnicze dla alokacji na Linuksie (i innych platformach)?

Na Linuksie gdybym miał malloc(1024 * 1024 * 1024), to co właściwie robi malloc? Jestem pewien, że przypisuje wirtualny adre ... obi? (podaję Linuksa, ponieważ standard milczy na tego typu szczegóły, ale chciałbym wiedzieć, co inne platformy również.)

Jak działają free i malloc w C?

Próbuję rozgryźć, co by się stało, gdybym próbował uwolnić wskaźnik " od środka" na przykład spójrz na następujący kod: cha ... ie tylko, jak go używać, ale także być w stanie zrozumieć dziwne błędy i wyjątki i lepiej debugować mój kodץ Wielkie dzięki

Czym jest sterta pamięci?

Co to jest sterta pamięci ?

Jak znaleźć przyczynę błędu malloc "double free"?

Programuję aplikację w Objective-C i dostaję ten błąd: MyApp(2121,0xb0185000) malloc: &AST;** błąd dla obiektu 0x106 ... obiekt wypuszczam dwa razy. Jak ustawić jego breakpoint? Czy istnieje sposób, aby wiedzieć, co to jest "obiekt 0x1068310"?

Dlaczego w książce jest napisane, że muszę obsadzić malloca?

Dzisiaj dotarłem na stronę 167 z języka programowania C (wydanie drugie Brian W. Kernighan & Dennis M. Ritchie) {[10] } ... jaśnienia dlaczego nie rzucać malloc. [6]}ale moje pytanie brzmi: dlaczego w książce jest napisane, że powinienem go rzucić?

Dlaczego malloc inicjalizuje wartości na 0 w gcc?

Może różni się od platformy do platformy, ale Kiedy kompiluję używając gcc i uruchamiam poniższy kod, dostaję 0 za każdym r ... llocingu! (Nigdy o tym nie myślałem). Na pewno musi inicjalizować do zera przy przydzielaniu świeżego bloku lub dużego bloku.

Wyjaśnij tę implementację malloc z książki K & R

To fragment książki O C autorstwaKernighan i Ritchie . Pokazuje jak zaimplementować wersję malloc. Chociaż dobrze skomentowan ... ze == bp) { p->s.size += bp->s.size; p->s.ptr = bp->s.ptr; } else p->s.ptr = bp; freep = p; }

Dziwaczny sposób przydzielania dwuwymiarowej tablicy?

W projekcie ktoś popchnął tę linię: double (*e)[n+1] = malloc((n+1) * sizeof(*e)); Który rzekomo tworzy dwuwymiarową tabl ... zny, gdyby ktoś mógł mi wyjaśnić Powyższy tekst. Bo osobiście Poczuj się lepiej, jeśli użyjemy czegoś, co naprawdę rozumiemy.

Jak dynamicznie przydzielać miejsce w pamięci dla Ciągu i uzyskać ten ciąg od użytkownika?

Chcę odczytać dane wejściowe od użytkownika używającego programu C. Nie chcę używać tablicy typu, char names[50]; Poniewa ... , to przydzielona pamięć powinna być 14 (tzn. Długość łańcucha = 13 i 1 dodatkowa spacja dla '\0'). Jak mógłbym to osiągnąć?

Różnica między typem tablicy a tablicą przydzieloną malloc

Dzisiaj pomagałem mojemu przyjacielowi z kodem C, i znalazłem jakieś dziwne zachowanie, którego nie mogłem wyjaśnić, dlaczego ... ę stało? co spowodowało segfault z int list [n], który został zatrzymany, gdy zaczynamy używać list = malloc(n*sizeof (int))?

Czy malloc jest bezpieczny?

Czy funkcja malloc() jest ponownie włączona?