Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

Menggunakan realloc() dalam C: Sintaks, Praktik Terbaik & Contoh

Apa Itu realloc()

realloc() adalah fungsi pustaka standar C yang mengubah ukuran blok memori yang ada. Ini memperluas atau mengecilkan blok sambil mempertahankan isinya. Ini membuat manajemen memori dinamis lebih efisien, terutama saat ukuran yang diperlukan berubah selama runtime.

Sintaks

ptr = realloc(ptr, newSize);

Di sini, ptr menunjuk ke blok yang sebelumnya dialokasikan, dan newSize adalah ukuran yang diinginkan dalam byte. Setelah panggilan, ptr akan menunjuk ke byte pertama dari blok baru. Fungsi ini menyalin data asli ke lokasi baru dan membebaskan blok lama jika realokasi berhasil.

Poing Penting untuk Diingat

Contoh – Mengubah Ukuran Buffer String

#include <stdio.h> #include <stdlib.h> #include <string.h> int main(void) { char *buf = malloc(10); if (!buf) { perror("malloc"); return EXIT_FAILURE; } strcpy(buf, "Programming"); printf("%s\n", buf); char *tmp = realloc(buf, 20); // tingkatkan ukuran buffer if (!tmp) { free(buf); // blok asli masih valid perror("realloc"); return EXIT_FAILURE; } buf = tmp; strcat(buf, " in C"); printf("%s\n", buf); free(buf); return EXIT_SUCCESS; } 

Contoh – Mengalokasikan dan Mengubah Ukuran Array Integer

#include <stdio.h> #include <stdlib.h> int main(void) { int *arr = malloc(10 * sizeof(int)); if (!arr) { perror("malloc"); return EXIT_FAILURE; } /* ... gunakan array ... */ int *tmp = realloc(arr, 50 * sizeof(int)); if (!tmp) { free(arr); perror("realloc"); return EXIT_FAILURE; } arr = tmp; printf("Array diubah ukurannya berhasil\n"); free(arr); return EXIT_SUCCESS; } 

Tips Praktis

Bahasa C

  1. Bagaimana Molibdenum Mengubah Industri Modern: Penggunaan, Manfaat, dan Dinamika Pasokan
  2. Memanfaatkan Azure DevOps: Praktik Terbukti untuk Pengiriman yang Dipercepat
  3. Menguasai Fungsi VHDL: Panduan Praktis untuk Desain Efisien
  4. Ubah Teka-Teki Selesai Anda menjadi Karya Abadi dengan Resin Epoxy
  5. calloc() dalam C: Alokasi Memori Diinisialisasi Nol dan Contoh Praktis
  6. Menguasai Fungsi free() dalam C: Panduan Praktis & Contoh
  7. Panduan Esensial: Kapan dan Cara Menggunakan Pemadam Api dengan Aman
  8. Menguasai Pemcat Spray: Panduan Profesional untuk Cakupan Merata dan Aman
  9. Penggunaan Termistor yang Mudah: Panduan Langkah demi Langkah Arduino
  10. Menguasai Teknik Mesin Gerinda Cutter: Panduan Praktis