Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/01/2010, 08:40
Megamouse
 
Fecha de Ingreso: enero-2010
Mensajes: 24
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Reconocer el tipo de una Variable ingresada en tiempo de ejecución

Son dos temas distintos.

Por un lado tienes la introduccion de parametros por teclado, que la capturarias como cadena (manera mas facil), luego si quieres puedes convertirla a numerica (si son todos numeros) con atoi o atol.

Por otro lado esta trabajar con variables de tipo "indefinido" (pudes declararlas como indefinidas, pero necesitas conocer alguna manera para detectar de que tipo son):

Código C:
Ver original
  1. void Imprime (int tipo, void *var)
  2. {
  3.   int *aux_int;
  4.   char *aux_char;
  5.  
  6.   if (tipo == 1)
  7.   {
  8.     aux_char = var;
  9.     fprintf (stderr, "Variable texto [%s]\n", aux_char);
  10.   }
  11.   else
  12.   {
  13.     aux_int = var;
  14.     fprintf (stderr, "Variable numero [%d]\n", *aux_int);
  15.   }
  16. }
  17.  
  18.  
  19. int main(int argc, char *argv[])
  20. {
  21.   char var_texto[10];
  22.   int var_numero;
  23.  
  24.   strcpy (var_texto, "hola");
  25.   var_numero = 5;
  26.  
  27.   Imprime (1, var_texto);  
  28.   Imprime (2, &var_numero);
  29.  
  30.   return 0;
  31. }