C hacks
C allows you to define a void
pointer. This pointer will match a pointer to any type.
When you invoke a function whose formal parameter is a
void *,
you can use any pointer as the actual argument.
This allows you to build generic functions which will operate
on a variety of data types.
However it does bypass the compiler's type checking -
and allow you to inadvertently make mistakes that
a compiler for a
strongly typed
language such as Ada
would detect for you.
Hacking
This term probably arises from the MIT expression
for what we know in English as a "student prank".
MIT students refer to
these assaults on the conventions of society as
"hacks".