Apa itu calloc dalam C?
The calloc () dalam C ialah fungsi yang digunakan untuk memperuntukkan pelbagai blok memori yang mempunyai saiz yang sama. Ini adalah fungsi peruntukan memori dinamik yang memperuntukkan ruang memori ke struktur data yang kompleks seperti susunan dan struktur dan mengembalikan penunjuk kosong ke memori. Calloc bermaksud peruntukan yang bersebelahan.
Fungsi Malloc digunakan untuk memperuntukkan satu blok ruang memori sementara fungsi calloc di C digunakan untuk memperuntukkan beberapa blok ruang memori. Setiap blok yang diperuntukkan oleh calloc dalam pengaturcaraan C mempunyai ukuran yang sama.
calloc () Sintaks:
ptr = (cast_type *) calloc (n, size);
- Contoh pernyataan di atas calloc dalam C digunakan untuk memperuntukkan n blok memori dengan ukuran yang sama.
- Setelah ruang memori diperuntukkan, maka semua bait dimulakan menjadi sifar.
- Penunjuk yang kini berada pada bait pertama ruang memori yang diperuntukkan dikembalikan.
Apabila terdapat ralat memperuntukkan ruang memori seperti kekurangan memori, maka penunjuk nol dikembalikan seperti yang ditunjukkan dalam contoh calloc di bawah.
Cara menggunakan calloc
Program calloc di bawah di C mengira jumlah turutan aritmetik.
#includeint main() {int i, * ptr, sum = 0;ptr = calloc(10, sizeof(int));if (ptr == NULL) {printf("Error! memory not allocated.");exit(0);}printf("Building and calculating the sequence sum of the first 10 terms \ n ");for (i = 0; i < 10; ++i) { * (ptr + i) = i;sum += * (ptr + i);}printf("Sum = %d", sum);free(ptr);return 0;}
Keputusan calloc dalam contoh C:
Building and calculating the sequence sum of the first 10 termsSum = 45