Kênh Tên Miền chuyên cung cấp tên miền đẹp, giá rẻ! Hãy liên hệ kỹ thuật: 0914205579 - Kinh doanh: 0912191357 để được tư vấn, hướng dẫn miễn phí, Cảm ơn quý khách đã ủng hộ trong thời gian qua!
Wednesday, December 31, 2014

hàm malloc, alloc,  realloc, free, cấp phát và giải phóng bộ nhớ động trong lập trình c

  1. 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ý
  2. các thao tác trên bộ nhớ và con trỏ nằm trong thư viện stdlib.halloc.h
  3. các hàm cấp phát và giai phóng bộ nhớ: maaloc, alloc, realloc, free
  4.  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));
  5. hàm free dùng để giải phóng bộ nhớ đã cấp phát.
    free(p);
  6. 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);
    }
  7. hàm calloc cấp phát bộ nhớ nitems*size byte
    void *calloc(size_t nitems,size byte);
  8. hàm realloc điêuchỉnh lai kích thước đã cấp phát là block size byte
    void *realloc(void *block,sizebyte);
  9. 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));
  10. 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
    }
  11. 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));


0 comments:

Post a Comment

Popular Posts