The void type, in several programming languages, more so curly bracket programming languages derived from C and ALGOL 68, is the return type of a function that returns normally, but provides no result value to its caller.
Usually such functions are called for their side effects, such as performing some task or writing to their output parameters.
The use of the void data type in such context is comparable to procedures in Pascal and syntactic constructs which define subroutines in Visual Basic.
The C language standard does not guarantee that the different pointer types have the same size or alignment.
[1] The explicit use of void vs. giving no arguments in a function prototype has different semantics in C and C++, as detailed in this table:[2] (not strictly equivalent) The C syntax to declare a (non-variadic) function with an as-yet-unspecified number of parameters, e.g. void f() above, was deprecated in C99.