Back to Course
Pointers & Memory

How to Dynamically Allocate Memory using malloc() in C?

What is malloc()?

malloc() (memory allocation) dynamically allocates a block of memory of a specified size at runtime and returns a pointer to it.

Syntax

void* malloc(size_t size);

Example

int *arr = (int*) malloc(5 * sizeof(int));
if (arr == NULL) {
    printf("Memory allocation failed");
}
for (int i = 0; i < 5; i++) {
    arr[i] = i + 1;
}
free(arr);

Key Points

  • Memory allocated by malloc() is uninitialized (contains garbage values).
  • Always check the returned pointer for NULL before use.
  • Always release memory with free() once done to avoid memory leaks.

Ready to master real-world C Programming development?

Learn C Programming hands-on with mentor-led, live sessions.

Explore Course