Tengo que hacer un programa que al pasarle un apuntador void* pueda saber si es entero (int), de punto flotante (double), un caracter (char) o una cadena (char[]).
void miFuncion(void* apuntador);
Lo unico que se me ocurrio fue usar sizeof para saber el tamaño de memoria que ocupa el dato ya que se lo siguiente:
int --> 4 bytes
double--> 8 bytes
char --> 1 byte
char[15]--> 15 bytes
Pero si ejecuto el siguiente codigo no me arroja los resultados que espero.
Código C:
Ver original
int main(){ int n = 1; double d = 999999999999; char c = '3'; char cadena[15] = "cadena"; void* p = &n; void* p2 = &d; void* p3 = &c; void* p4 = &cadena; }
Saludos!