Pertanyaan yang diberi tag «malloc»

Fungsi malloc melakukan alokasi memori dinamis di C dan merupakan bagian dari perpustakaan standar. Gunakan tag ini untuk pertanyaan tentang penggunaan, perilaku, dan implementasi malloc.

28
Apakah saya menggunakan hasil malloc?
Dalam pertanyaan ini , seseorang menyarankan dalam komentar bahwa saya tidak boleh memberikan hasil malloc, yaitu int *sieve = malloc(sizeof(int) * length); daripada: int *sieve = (int *) malloc(sizeof(int) * length); Mengapa demikian?
2408 c  malloc  casting 

13
Perbedaan antara malloc dan calloc?
Apa perbedaan antara melakukan: ptr = (char **) malloc (MAXELEMS * sizeof(char *)); atau: ptr = (char **) calloc (MAXELEMS, sizeof(char*)); Kapan sebaiknya menggunakan calloc over malloc atau sebaliknya?
780 c  malloc  calloc 

17
Apa yang BENAR-BENAR terjadi ketika Anda tidak bebas setelah malloc?
Ini adalah sesuatu yang telah menggangguku sejak lama. Kita semua diajarkan di sekolah (setidaknya, saya dulu) bahwa Anda HARUS membebaskan setiap pointer yang dialokasikan. Saya agak penasaran, tentang biaya sebenarnya dari tidak membebaskan memori. Dalam beberapa kasus yang jelas, seperti ketika mallocdipanggil di dalam loop atau bagian dari eksekusi thread, …
538 c  malloc  free 

19
Dalam kasus apa saya menggunakan malloc dan / atau baru?
Saya melihat di C ++ ada beberapa cara untuk mengalokasikan dan membebaskan data dan saya mengerti bahwa ketika Anda menelepon mallocAnda harus menelepon freedan ketika Anda menggunakan newoperator Anda harus memasangkan dengan deletedan itu adalah kesalahan untuk mencampur keduanya (misalnya Memanggil free()sesuatu yang telah dibuat dengan newoperator), tapi saya tidak …

25
Mengapa penggunaan alokasi () tidak dianggap praktik yang baik?
alloca()mengalokasikan memori pada stack daripada pada heap, seperti pada kasus malloc(). Jadi, ketika saya kembali dari rutinitas, memori itu dibebaskan. Jadi, sebenarnya ini memecahkan masalah saya membebaskan memori yang dialokasikan secara dinamis. Membebaskan memori yang dialokasikan melalui malloc()adalah sakit kepala utama dan jika entah bagaimana terlewatkan mengarah ke semua jenis …
401 c  stack  malloc  allocation  alloca 

13
Bagaimana cara kerja malloc () dan gratis ()?
Saya ingin tahu bagaimana mallocdan freebekerja. int main() { unsigned char *p = (unsigned char*)malloc(4*sizeof(unsigned char)); memset(p,0,4); strcpy((char*)p,"abcdabcd"); // **deliberately storing 8bytes** cout << p; free(p); // Obvious Crash, but I need how it works and why crash. cout << p; return 0; } Saya akan sangat berterima kasih jika …

3
Mengapa malloc + memset lebih lambat dari calloc?
Diketahui bahwa callocini berbeda dari mallocyang menginisialisasi memori yang dialokasikan. Dengan calloc, memori diatur ke nol. Dengan malloc, memori tidak terhapus. Jadi dalam pekerjaan sehari-hari, saya anggap callocsebagai malloc+ memset. Kebetulan, untuk bersenang-senang, saya menulis kode berikut untuk benchmark. Hasilnya membingungkan. Kode 1: #include<stdio.h> #include<stdlib.h> #define BLOCK_SIZE 1024*1024*256 int main() …
256 c  malloc 



23
Mengatur variabel ke NULL setelah gratis
Di perusahaan saya ada aturan pengkodean yang mengatakan, setelah membebaskan memori apa pun, setel ulang variabel ke NULL. Sebagai contoh ... void some_func () { int *nPtr; nPtr = malloc (100); free (nPtr); nPtr = NULL; return; } Saya merasa bahwa, dalam kasus-kasus seperti kode yang ditunjukkan di atas, pengaturan …

5
Deklarasi implisit yang tidak kompatibel dari fungsi built-in 'malloc'
Saya mendapatkan kesalahan ini: peringatan: deklarasi implisit yang tidak kompatibel dari fungsi built-in 'malloc' Saya mencoba melakukan ini: fileinfo_list* tempList = malloc(sizeof(fileinfo_list)); Hanya untuk referensi, struct yang digunakan adalah: typedef struct { fileinfo** filedata; size_t nFiles; size_t size; size_t fileblock; } fileinfo_list; Saya tidak melihat ada yang salah dengan apa …
155 c  struct  malloc 

17
Apa gunanya malloc (0)?
Saya baru saja melihat kode ini : artist = (char *) malloc(0); ... dan saya bertanya-tanya mengapa orang melakukan ini?
121 c  malloc 



8
Malloc vs baru - padding berbeda
Saya meninjau kode C ++ orang lain untuk proyek kami yang menggunakan MPI untuk komputasi kinerja tinggi (10 ^ 5 - 10 ^ 6 core). Kode ini dimaksudkan untuk memungkinkan komunikasi antara (berpotensi) mesin yang berbeda pada arsitektur yang berbeda. Dia menulis komentar yang mengatakan sesuatu di sepanjang baris: Kami …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.