Tipos de datos
Cuando tienes que resolver un problema, aparte de determinar cuántas variables vas a utilizar y cómo se van a llamar, debes saber también de qué tipo serán. El tipo de datos de una variable determina el rango de valores que puede tomar dicha variable, por ejemplo, si declaramos la variable X de tipo int, podremos poner dentro de X cualquier valor entero comprendido entre cierto rango, pero no podremos asignarle valores con punto decimal.
Los tipos básicos en lenguaje C son:
Tipo
|
Tamaño en bits
|
Tamaño en bytes
|
Rango de datos
|
char
|
1
|
8
|
0 a 255
|
int
|
4
|
32
|
-2,147,483,648 a
2,147,483,647
|
float
|
4
|
32
|
1.17549e-38 a
3.40282e+38
|
double
|
8
|
64
|
2.22507e-308 a
1.79769e+308
|
void
|
0
|
0
|
Sin valor
|
Tipo char
Permite almacenar dentro de una variable cualquier número del rango 0 a 255, los cuales representan a un caracter (código ASCII). Por ejemplo, si declaramos la variable:
char letra;
Dentro de nuestro programa podríamos tener algo como:
letra = 'P';
Lo cual almacenaría el número 80 (código ASCII de la letra P) dentro de la variable letra. De esta manera, si tenemos una instrucción que imprima la variable letra:
cout<< letra;
Nos mostraría en pantalla la letra P (no el número 80), por tratarse de una variable de tipo char.
También podemos asignar a la variable directamente el código ASCII, por ejemplo, la siguiente línea es equivalente a letra='P';
letra = 80;
Cuando queremos que una variable de tipo char nos almacene varios caracteres (para tratar nombres, apellidos, direcciones, etc.), debemos declarar el tamaño deseado dentro de corchetes como lo muestra el siguiente ejemplo:
char nombre[20], apellido[20], direccion[50];
Ir al inicio de la página
Tipo int
Se utiliza cuando queremos que nuestra variable contenga valores enteros, es decir, sin parte decimal. Aquí te mostramos algunos ejemplos de declaración de variables enteras, incluso podemos asignarles un valor inicial dentro de la declaración:
int X, Y, h, g;
int i=0, contador=0;
int factorial = 1;
Por ejemplo, si quieres que tu programa pida el número de alumnos que se registrarán en una lista, debes usar una variable de tipo entero, puesto que puedes registrar 10, 20, 100 o 1000 alumnos, pero no podrías registrar 3.15 o 10.258 alumnos. Otros datos que necesitarían tener una variable entera para almacenar ahí su valor son: número de hijos, contador de hombres, contador de mujeres, número de lados de una figura geométrica, etc.
Tipo float
Permite a una variable almacenar valores que necesitan tener parte decimal. Por ejemplo, si quieres programar la fórmula para calcular el área de un triángulo (A=b*h/2), es probable que se obtengan valores con decimales, porque hay una división dentro de la fórmula. Para declarar estas variables de tipo flotante (valores con decimales) lo haríamos así:
float A, b, h;
De esta manera, si en nuestro programa están las siguientes asignaciones:
b=4.5;
h=2;
Dentro de la variable b se coloca el valor 4.5, mientras que en la h se coloca un 2.0 (debido a que h es de tipo float). Y después de aplicar la fórmula:
A = b * h / 2;
El resultado 3.25 se almacena dentro de la variable A.
Ir al inicio de la página
Tipo double
Se utilizan cuando requerimos valores de alta presición, es decir, cuando es importante que los números tengan muchas posiciones decimales significativas. El tipo double puede almacenar números muy grandes y también los extremadamente pequeños.
Aquí te mostramos como se declaran unas variables de tipo double:
double punto_ebullicion, masa_total;
double pi = 3.1415926536;
Tipo void
La palabra void se utiliza para especificar que una función no recibirá valores, o bien para indicar que dicha función no regresará valor alguno. Por ejemplo, en los programas podríamos escribir la función main como sigue:
int main(void)
Donde void entre paréntesis indica que la función main no recibirá ningún valor cuando sea invocada. Esto se explicará a detalle en la sección de funciones.
Es importante que recuerdes que el tipo void solo se puede usar en la declaración de funciones y no en la de variables, por ejemplo, la siguiente declaración es INCORRECTA:
void g, k; //No puede haber variables de tipo void