nextupprevious
Next: 4 Estructuras de datos  Up:Índice
Previous: 2. Identificadores, palabras reservadas y caracteres especiales


3 Tipos de Datos

C utiliza 5 palabras reservadas para definir los tipos de datos fundamentales. A diferencia de Pascal, un determinado tipo de datos puede ir cualificado por un conjunto de modificadores que estudiaremos más adelante.
Los tipos de datos fundamentales son:

char            short int              int
long int        unsigned char          unsigned short int
unsigned int    unsigned long int      double
float           long float             void
Figura 5 Tipos de datos fundamentales

char                          Representa un carácter en código ASCII, también se puede interpretar como
                                 un entero.

short int                   Indica un entero de tamaño corto.

int                            Entero igual que integer en Pascal.

long int                    Entero largo.

unsigned short int  Como short int pero sin signo.

unsigned int            Como int pero sin signo.

unsigned long int    Como long int pero sin signo.

float                        Flotante corto. Análogo al single de Pascal.

double                    Flotante largo. Análogo al double de Pascal.

void                        No indica ningún tipo. Es el tipo de las funciones que no devuelven nada.

Los tipos short int, long int, unsigned int y long float se pueden escribir como: short, long, unsigned y double.

Con respecto al tamaño que ocupan en memoria variables de estos tipos, todo lo que garantiza C es:

 sizeof(char) = 1
 sizeof(short) <= sizeof(int) <= sizeof(long)
 sizeof(unsigned) = sizeof(int)
 sizeof(float) =< sizeof(double)

Donde sizeof es un operador que está incorporado en C y devuelve el número de bytes que tiene un objeto.

Hay un grupo de modificadores que indican la forma que se almacena una determinada variable de un determinado tipo. Se indica antes del tipo de la variable.

static
Cuando se invoca a una función por segunda vez se pierden los valores que las variables locales de la función tenían al acabar la anterior llamada. Declarando una variable de este tipo cuando se llama por segunda vez a la subrutina la variable static (estática) contiene el mismo valor que al acabar la llamada anterior.

auto
Es lo mismo que si no se usara ningún modificador

volatile
El compilador debe asumir que la variable está relacionada con un dispositivo y que puede cambiar de valor en cualquier momento.

register
El compilador procurará almacenar la variable cualificada de este modo en un registro de la CPU.

extern
La variable se considera declarada en otro fichero. No se le asignará dirección ni espacio de memoria.



nextupprevious
Next: 4 Estructuras de datos  Up:Índice
Previous: 2. Identificadores, palabras reservadas y caracteres especiales


Última modificación: 26/4/1999


Copyright © 1999, F. de Sande - Centro Superior de Informática, Universidad de La Laguna.
All rights reserved.