What Is Void Data Type in C?


Angela Bailey

The void data type in C is a special type that represents the absence of any type. It is used when a function or a pointer does not return any value or when a function takes no arguments. In this article, we will explore the void data type in detail and understand its significance in C programming.

Defining Void Data Type

In C, the void keyword is used to specify the absence of a specific data type. It is often used as a return type for functions that do not return any value. For example:

void displayMessage() {
    printf("Hello, world!\n");

In the above example, the displayMessage() function does not return anything, so its return type is defined as void.

Using Void Pointers

Void pointers are another important use case of the void data type in C. A void pointer can point to objects of any data type. It provides a way to work with generic or unknown types. However, you cannot directly dereference or perform arithmetic operations on a void pointer.

void* allocateMemory(size_t size) {
    return malloc(size);

The allocateMemory() function returns a void pointer obtained by allocating memory using the malloc() function. The returned void pointer can be cast back to its original data type to access and manipulate values.

Void as Function Arguments

The void data type can also be used as an argument in function prototypes to indicate that the function does not take any parameters.

void printGreeting(void) {

The printGreeting() function takes no arguments, so it uses void as its parameter list.


The void data type in C is a powerful tool that allows us to define functions with no return value, work with generic pointers, and indicate functions that take no arguments. It helps in writing flexible and reusable code. Understanding the usage of the void data type is essential for every C programmer.

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy