Void is considered a data type (for organizational purposes), but it is basically a keyword to use as a placeholder where you would put a data type, to represent "no data".
Hence, you can declare a routine which does not return a value as:
But, you cannot declare a variable like this:
However, when used as a pointer, then it has a different meaning:
This declares a pointer, but without specifying which data type it is pointing to.