Hàm realloc() trong C | Thư viện C chuẩn




Hàm realloc() trong C

Hàm realloc() cố gắng để phục hồi khối bộ nhớ được trỏ tới bởi con trỏ ptr mà đã được cấp phát trước đó với một lời gọi tới malloc hoặc calloc.

Khai báo hàm realloc() trong C

Dưới đây là phần khai báo cho realloc() trong C:

void *realloc(void *ptr, kich-co)

Tham số

  • ptr: Đây là con trỏ tới khối bộ nhớ đã được cấp phát trước đó với malloc, calloc hoặc realloc để được tái cấp phát. Nếu giá trị là NULL, thì một khối mới được cấp phát và một con trỏ tới nó được trả về bởi hàm này.

  • kich-co: Đây là kích cỡ mới cho khối bộ nhớ. Nếu giá trị là 0 và con trỏ ptr trỏ tới một khối nhớ đang tồn tại, khối nhớ được trỏ tới bởi ptr được giải phóng và một con trỏ NULL được trả về.

Trả về giá trị

Hàm này trả về một con trỏ tới bộ nhớ được cấp phát mới, hoặc trả về NULL nếu yêu cầu thất bại.

Ví dụ

Chương trình C sau minh họa cách sử dụng của realloc() trong C:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
   char *str;

   /* lan cap phat bo nho ban bau */
   str = (char *) malloc(15);
   strcpy(str, "VietJackTeam");
   printf("Chuoi = %s,  tai Dia chi = %u\n", str, str);

   /* tai cap phat lai bo nho */
   str = (char *) realloc(str, 25);
   strcat(str, "@gmail.com");
   printf("Chuoi = %s,  tai Dia chi = %u\n", str, str);

   free(str);
   
   return(0);
}

Biên dịch và chạy chương trình C trên sẽ cho kết quả:

Hàm realloc trong C

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài Thư viện C phổ biến khác tại VietJack:


stdlib-h-trong-c.jsp


Tài liệu giáo viên