Klausimai pažymėti „malloc“

Malloc funkcija atlieka dinaminį atminties paskirstymą C ir yra standartinės bibliotekos dalis. Naudokite šį žymą klausimų, susijusių su malloc naudojimu, elgesiu ir įgyvendinimu.
28
atsakymai

Spausdinti malloc rezultatą?

Šiame klausime kažkas pasiūlė komentuoti, kad neturėčiau įvesti malloc rezultato, t.y. int * sietas = malloc (dydis (int) * ilgis); ne: int * sietas = (int *) malloc (dydis (int) * ilgis); Kodėl taip yra?
nustatyti kovo 03'09 13:13
18
atsakymai

Skirtumas tarp malloc ir calloc?

Koks skirtumas tarp veiksmų: ptr = (char **) malloc (MAXELEMS * sizeof (char *)); arba ptr = (char **) calloc (MAXELEMS, dydis (char *)); Kada naudinga naudoti calloc per malloc arba atvirkščiai?
nustatyti spalio 08 '09 18:04
17
atsakymai

Kas tikrai atsitinka, kai nesate laisvas po malloc?

Būtent tai man trukdo amžių. Mes visi mokomės mokykloje (bent jau buvau), kad jūs privalote išleisti kiekvieną rodomą žymeklį. Aš šiek tiek smalsu apie tikrąsias atminties išlaisvinimo išlaidas. Kai kuriose akivaizdiose ...
Nustatykite kovo 17 d
19
atsakymai

Kada naudoti malloc vs new?

Matau, kad C + + yra keletas būdų, kaip priskirti ir laisvai naudoti duomenis, ir suprantu, kad, kai skambinate malloc, turite skambinti nemokamai, o naudodami naują operatorių turite prisijungti, kad ištrintumėte, ir tai (pvz., Skambinkite nemokamai ( ), kad ...
nustatyti spalio 08 '08 10:47 val
25
atsakymai

Kodėl asigna () nėra laikoma gerąja praktika?

asigna () skiria atmintį ant kamino, o ne krūvos, kaip malloc () atveju. Todėl, kai grįšiu iš įprastinės, atmintis bus atleista. Taigi tai iš tikrųjų išsprendžia mano problemą, susijusią su dinamiškai paskirstytos atminties išleidimu. Atlaisvinti atmintį, vyde ...
birželio 19 d. 19:24
14
atsakymai

Kaip veikia malloc () ir nemokamas () darbas?

Aš noriu žinoti, kaip malloc ir laisvas darbas. int main () {unsigned char * p = (nepasirašyta char *) malloc (4 * dydžio (nepasirašyta char)); memeet (p, 0,4); strcpy ((char *) p, "abcdabcd"); // ** sąmoningai saugomi 8 bitai ** cout << p; nemokamai (p); // ...
yra nustatytas liepos 13 d
3
atsakymai

Kodėl malloc + memset lėčiau nei calloc?

Žinoma, kad Calloc skiriasi nuo malloc, nes ji inicijuoja priskirtą atmintį. Su calloc atmintimi nustatoma nulis. Malloc atmintis neišvaloma. Todėl savo kasdieniame darbe aš žiūriu į calloc kaip malloc + memset. Beje, patenkinti ...
nustatytas balandžio 22 d '10 8:40
1
atsakymas

Kodėl knyga sako, kad turiu nutraukti malloc?

Šiandien aš pasiekiau C programavimo kalbos 167 puslapį (antrasis Brian W. Kernigan ir Dennis M. Richie leidimas) ir nustatė, kad autorius sako, kad turėčiau naudoti malloc. Čia yra dalis knygos: 7.8.5 „Storage Management malloc“ ir „Callo“ funkcijos ...
rugsėjo 18 d '15 15:36
5
atsakymai

Nesuderinama netiesioginė pastato „malloc“ deklaracija

Gaunu šią klaidą: įspėjimas: nesuderinama netiesioginė integruotos funkcijos „malloc deklaracija, kurią bandau tai padaryti: fileinfo_list * tempList = malloc (sizeof (fileinfo_list)); Naudojant tik struktūrą, naudojama: typedef struct {...
nustatyti rugpjūčio 13 d '11, 16:49
23
atsakymai

Kintamojo nustatymas po nulio

Mano įmonėje yra kodavimo taisyklė, kuri sako, atlaisvindama bet kokią atmintį, nustatykite kintamąjį į NULL. Pavyzdžiui ... void some_func () {int * nPtr; nPtr = malloc (100); nemokamai (nPtr); nPtr = NULL; sugrįžimas; } Aš jaučiuosi ...
birželio 22 d., 08:35
12
atsakymai

Kaip galite įvesti tarpus su scanf?

Naudojant šį kodą: char * name = malloc (sizeof (char) + 256); printf („Kas yra tavo vardas?“); scanf ("% s", pavadinimas); printf ("Sveiki% s. Malonu susitikti su jumis. \ t Vartotojas gali įvesti savo vardą, bet kai jis įveda pavadinimą su erdve, kaip Lucas ...
nustatyti 08 rug. '09, 7:37
3
atsakymai

Išgalvotas būdas atskirti dvimatį matricą?

Projekte kažkas paspaudė šią eilutę: dvigubai (* e) [n + 1] = malloc ((n + 1) * sizeof (* e)); Tai, kas turėtų sukurti dvimatį masyvą (n + 1) * (n + 1), padvigubinama. Manau, sakau, nes iki šiol niekas, kurio paprašiau, negalėjo pasakyti ...
nustatytas balandžio 22 d '16, 15:43
8
atsakymai

Malloc vs naujas - įvairios klojimo

Peržiūrėjau kitą C + + kodą mūsų projektui, kuris naudoja MPI didelės kokybės skaičiavimams (10 ^ 5 - 10 ^ 6 šerdys). Šis kodas skirtas bendravimui tarp (potencialiai) skirtingų mašinų skirtingose ​​architektūrose. Jis parašė ...
lapkričio 8 d. '12 - 01: 01
6
atsakymai

Kas yra atminties krūva?

Kas yra atminties krūva?
nustatytas vasario 22 d '10, 7:15
17
atsakymai

kas yra Malloc (0) taškas?

Tiesiog pamačiau šį kodą: atlikėjas = (char *) malloc (0); ir man buvo įdomu, kodėl tai padaryti?
nustatytas sausio 7 d '10, 20:43