typedef da un nombre adicional a un tipo ya existente. Por ejemplo:
typedef float temperatura;hace que
temperatura sea un sinónimo de float , pero no define un nuevo tipo, y por tanto no afecta a las reglas de conversión de tipo. Así, el siguiente código no produciráningún mensaje de error:
main(){
typedef float temperatura;
typedef float presion;
temperatura t = 23;
presion p;
p = t;
}
ya que, aunque hemos declarado t y p como variables de distinto tipo, ambas son en realidad de tipo float .
El uso más importante de typedef es a la hora de correr el mismo programa en diferentes máquinas. Por ejemplo, supongamos que estamos utilizando un programa en un ordenador que utiliza valores tipo float y aritmética entera de 16 bits, y que queremos utilizarlo en una máquina con doble precisión y enteros de 32 bits. Si los enteros se declaran del tipo intNumber, y los reales del tipo floatNumber, el cambio de una máquina a otra se reduce a cambiar de:
typedef short int intNumber; typedef float floatNumber;en la máquina pequeña a:
typedef long int intNumber; typedef double floatNumber;y recompilar el programa. Sin el uso de este tipo de declaraciones, habría que cambiar todos los
short int por long int, y todos los float por double.
Comentarios, sugerencias, ideas...
© Beatriz Fuentes Arenaz, 1996-1997