Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
realloc trong C là gì? Cách dùng hàm realloc trong ngôn ngữ lập trình C như thế nào? Hãy cùng Quantrimang.com tìm hiểu nhé!
Hàm realloc() trong ngôn ngữ lập trình C được dùng để chỉnh lại kích thước khối bộ nhớ được chỉ tới một con trỏ trước đó đã được cấp phát cho biến bởi hàm malloc() hoặc calloc(). Realloc là viết tắt của phân bổ lại - reallocation trong tiếng Anh.
Malloc() là hàm được dùng để linh động phân bổ một khối bộ nhớ lớn theo kích thước cụ thể.Calloc() được dùng để phân bổ linh động một số khối liền kề nhất định theo một kích thước cụ thể.void *realloc(void *ptr, size_t size)
Ngoại lệ của realloc() là chỉ có thể sử dụng nó để phân bổ bộ nhớ động. Nếu bộ nhớ không được phân bổ động, thì nó sẽ hiện một hành vi bất thường và chương trình có thể chứa các giá trị rác.
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ề.
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.
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, "QTM");
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 để xem kết quả.
Nhìn chung, bạn cần nhớ những điều sau về hàm realloc() trong C:
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Hướng dẫn tóm tắt trang web trên Edge bằng Copilot
Subagents là gì? So sánh OpenAI Codex, Claude Code và Gemini CLI
Hướng dẫn sử dụng NotebookLM viết bài đăng blog chuyên nghiệp
Hướng dẫn tạo website bằng 10Web AI
Hướng dẫn tổng hợp kiến thức học thuật trên Perplexity AI
Hướng dẫn tạo bài giảng từ sơ đồ tư duy trên Heuristica
Cách tạo poster bằng AI trên Microsoft Designer
Làm sao khi Copilot không hoạt động trên Edge?
Cách tạo poster bằng AI trên Microsoft Designer
Cách dùng AI để lên kế hoạch cho chuyến cắm trại “đúng gu” của bạn
Tớ sẽ nhớ cậu lắm
5 Cuốn Sách Miễn Phí Mà Mọi Machine Learning Engineer Nên Đọc
Top 5 mô hình ai tạo video mã nguồn mở đáng chú ý nhất hiện nay
Cách sử dụng OpenAI Codex trực tiếp trong Google Chrome
Hoa sim đỏ
Hướng dẫn tạo bài đọc Reading từ SGK bằng NotebookLM
Hướng dẫn kết nối Copilot với Gmail, OneDrive trên Windows 11
Hướng dẫn cải thiện chất lượng prompt bằng Brisk
Plan Mode trong Cursor là gì? Cách sử dụng Plan Mode trong Cursor
Hướng dẫn cách hủy đăng ký và xóa tài khoản Copilot