- biến động được tạ ra khi chạy chương trình. thông qua con trỏ bộ nhớ được cấp phát và quản lý
- các thao tác trên bộ nhớ và con trỏ nằm trong thư viện stdlib.h và alloc.h
- các hàm cấp phát và giai phóng bộ nhớ: maaloc, alloc, realloc, free
- chứa năng của hàm malloc là cấ phát 1 vùng nhớ có kích thowcs size
ví dụ: int *p;
p=(int *)malloc(100);
p=(int *)malloc(80*sizeof(int)); - hàm free dùng để giải phóng bộ nhớ đã cấp phát.
free(p); - ví dụ:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
void mian()
{
char *s;
s=(char*)malloc(10);
strcpy(s,"HELLO");
puts(s);
free(s);
} - hàm calloc cấp phát bộ nhớ nitems*size byte
void *calloc(size_t nitems,size byte); - hàm realloc điêuchỉnh lai kích thước đã cấp phát là block size byte
void *realloc(void *block,sizebyte); - khởi tạo mảng cấp phát động
int *a=(int *)malloc(n*sizeof(int)):
int *a=(int*)calloc(n,sizeof(int)); - kiểm tra cấp phát thành công
if(a!=NULL)
{
//làm việc với mảng
free(a);//giai phóng
} - cấp phât động mảng 2 chiều
int **a=(int**)malloc(hàng*sizeof(int*));
for(int i=0;i<n;i++)
a[i]=(int*)malloc(cột*sizeof(int));
Tối ưu hóa thuật toán . về tối ưu hoá thuật toán trong giải quyết một bài toán tưởng chừng rất đơn giản, nhưng việc tìm ra thuật toán tối ưu cho nó lại không dễ ...
Thứ Tư, 31 tháng 12, 2014
hàm malloc cập phát bộ nhớ động
hàm malloc, alloc, realloc, free, cấp phát và giải phóng bộ nhớ động trong lập trình c
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét