©️TIPOS DE DATOS
Los tipos de datos en C se refiere a un extenso sistema utilizado para declarar variables p funciones de diferentes tipos. El tipo de una variable determina cuanto espacio ocupa en el almacenamiento y como se interpreta el patron de bits almacenado.
Los tipos en C se pueden clasificar de la siguiente manera:
Sr.No. | Tipos y descripción |
1 | Tipos basicos Son tipos aritméticos y se clasifican además en: (a) tipos enteros y (b) tipos de coma flotante. |
2 | Tipos enumerados Son nuevamente tipos aritméticos y se usan para definir variables que solo pueden asignar ciertos valores enteros discretos a lo largo del programa. |
3 | El tipo vacío El especificador de tipo void indica que no hay ningún valor disponible. |
4 | tipos derivados Incluyen (a) tipos de puntero, (b) tipos de matriz, (c) tipos de estructura, (d) tipos de unión y (e) tipos de función. |
Los tipos de matriz y los tipos de estructura se denominan colectivamente como tipos agregados. El tipo de una funcion especifica el tipo de valor de retorno de la funcion.
Tipos de Enteros
La siguienete tabla proporciona los detalles de los tipos de enteros estandar con sus tamaños de almacenamiento y rangos de valores:
Type | Storage size | Value range |
---|---|---|
char | 1 byte | -128 to 127 or 0 to 255 |
unsigned char | 1 byte | 0 to 255 |
signed char | 1 byte | -128 to 127 |
int | 2 or 4 bytes | -32,768 to 32,767 or -2,147,483,648 to 2,147,483,647 |
unsigned int | 2 or 4 bytes | 0 to 65,535 or 0 to 4,294,967,295 |
short | 2 bytes | -32,768 to 32,767 |
unsigned short | 2 bytes | 0 to 65,535 |
long | 8 bytes or (4bytes for 32 bit OS) | -9223372036854775808 to 9223372036854775807 |
unsigned long | 8 bytes | 0 to 18446744073709551615 |
Para obtener el espacio exacto de un tipo o una variable en una platafoma en particular, puede usar el operador sizeof
. Las expresiones sizeof(type) arrojan el tamaño de almacenamiento del objeto o tipo de bytes. A continuacion, veamos un ejemplo para obtener el tamaño de varios tipos en una maquina utilizando diferentes constantes definidas:
Floating-Point Types
Veamos los detallles de los tipos de punto flotante con el tamaño de almacenamieto y rango de valores:
Type | Storage size | Value range | Precision |
---|---|---|---|
float | 4 byte | 1.2E-38 to 3.4E+38 | 6 decimal places |
double | 8 byte | 2.3E-308 to 1.7E+308 | 15 decimal places |
long double | 10 byte | 3.4E-4932 to 1.1E+4932 | 19 decimal places |
El archivo de encabezado float.h define macros que le permite usar estos valores y otros detalles sobre la representacion binaria de numeros reales en sus programas. Veamos un ejemplo:
El tipo vacio
El tipo Void especifica que no hay ningun valor disponible. Se utilizan en tres tipos de situaciones:
Sr.No. | Tipos y descripción |
1 | Función devuelve como vacío Hay varias funciones en C que no devuelven ningún valor o puede decir que devuelven vacío. Una función sin valor de retorno tiene el tipo de retorno como nulo. Por ejemplo, void exit (estado int); |
2 | Argumentos de función como vacíos Hay varias funciones en C que no aceptan ningún parámetro. Una función sin parámetro puede aceptar un vacío. Por ejemplo, int rand(void); |
3 | Punteros para anular Un puntero de tipo void * representa la dirección de un objeto, pero no su tipo. Por ejemplo, una función de asignación de memoria void *malloc( size_t size ); devuelve un puntero a void que se puede convertir a cualquier tipo de datos. |
Última actualización