1. Định nghĩa hàm malloc() trong C

Hàm malloc() trong C được sử dụng để cấp phát bộ nhớ. Để khai báo hàm malloc() trong C, ta sẽ cần sử dụng cú pháp như sau:

void* malloc(size_t size);

Tham số:

  • size: kích thước của khối bộ nhớ tính bằng byte.

Lưu ý:

  • Hàm malloc() trả về con trỏ tới bộ nhớ nếu thành công.
  • Hàm malloc() trả về NULL nếu không thành công.

2. Ví dụ về hàm malloc() trong C

Ví dụ dưới đây, sử dụng hàm malloc() trong C để đọc chuỗi từ bàn phím:

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

int main() {
  int n, i, *ptr, sum = 0;

  printf("Nhap so phan tu: ");
  scanf("%d", &n);

  ptr = (int*) malloc(n * sizeof(int));
 
  // Neu bo nho khong duoc cap phat
  if(ptr == NULL) {
    printf("Loi bo nho khong duoc cap phat!");
    exit(0);
  }

  printf("Nhap cac phan tu: ");
  for(i = 0; i < n; ++i) {
    scanf("%d", ptr + i);
    sum += *(ptr + i);
  }

  printf("Tong = %d", sum);
  
 free(ptr);

  return 0;
}

Kết quả:

Nhap so phan tu: 3

Nhap cac phan tu: 12

23

14

Tong = 49