TIPOS DE DATOS FUNDAMENTALES EN C+++
En C sólo existen cinco tipos fundamentales y los tipos enumerados, C++ añade un septimo tipo, el bool, y el resto de los tipos son derivados de ellos.
La definiciones de sintaxis de C++ se escribirán usando el color verde. Los valores entre [] son opcionales, los valores separados con | indican que sólo debe escogerse uno de los valores.
Los valores entre <> indican que debe escribirse obligatoriamente un texto que se usará como el concepto que se escribe en su interior. [signed|unsigned] char <identificador> significa que se puede usar signed o unsigned, o ninguna de las dos, ya que ambas están entre []. Además debe escribirse un texto, que debe ser una única palabra que actuará como identificador o nombre de la
variable.
Este identificador lo usaremos para referirnos a la variable durante el programa.
signed char Cuenta
unsigned char letras
char caracter
Tipo "char" o carácter:
[signed|unsigned] char <identificador>
Es el tipo básico alfanumérico, es decir que puede contener una carácter, un dígito numérico o un signo de puntuación. Desde el punto de vista del ordenador, todos esos valores son caracteres. En C y C++ éste tipo siempre contiene un único carácter del código ASCII.
El tamaño de memoria es de 1 byte u octeto. Hay que notar que en C un carácter es tratado en todo como un número, de hecho puede ser declarado con y sin signo. Y si no se especifica el modificador de signo, se asume que es con signo.
Este tipo de variables es apto para almacenar números pequeños, como los dedos que tiene una persona, o letras, como la inicial de mi nombre de pila.
Tipo "int" o entero:
[signed|unsigned] long [int] <identificador>
[signed|unsigned] short [int] <identificador>
Las variables enteras almacenan números enteros dentro de los límites de su tamaño, a su vez, ese tamaño depende de la plataforma del compilador, y del número de bits que use por palabra de memoria: 8, 16, 23...
No hay reglas fijas para saber el mayor número que podemos almacenar en cada tipo: int, long int o short int; depende en
gran medida del compilador y del ordenador.
Sólo podemos estar seguros de que ese número en short int es menor o igual que en int, y éste a su vez es menor o igual que en long int. Este tipo de variables es útil para almacenar números relativamente grandes, pero sin decimales, por ejemplo el dinero que tienes en el banco, salvo que seas Bill Gates, o el número de lentejas que hay en un kilo de lentejas.
Tipo "float" o coma flotante:
Las variables de este tipo almacenan números en formato de coma flotante, mantisa y exponente, para entendernos, son números con decimales. Son aptos para variables de tipo real, como por ejemplo el cambio entre euros y pesetas. O para números muy grandes, como la producción mundial de trigo, contada en granos.
El fuerte de estos números no es la precisión, sino el orden de magnitud, es decir lo grande o pequeño que es el número que contiene.
Por ejemplo, la siguiente cadena de operaciones no
dará el resultado correcto:
float a = 12335545621232154;
a=a+1;
a=a-12335545621232154;
Finalmente, "a" valdrá 0 y no 1, como sería de esperar. Los formatos en coma flotante sacrifican precisión en favor de tamaño. Si embargo el ejemplo si funcionaría con números más pequeños. Esto hace que las variables de tipo float no sean muy adecuadas para los bucles.
Tipo "bool" o Booleana:
bool <identificador>
Las variables de este tipo sólo pueden tomar dos valores "true" o "false". Sirven para evaluar expresiones lógicas.
Este tipo de variables se puede usar para almacenar
respuestas, por ejemplo: ¿Posees carné de conducir?. O para almacenar informaciones que sólo pueden tomar dos valores, por ejemplo: qué mano usas para escribir.
En estos casos debemos acuñar una regla, en este ejemplo, podría ser diestro->"true", zurdo->"false".
Tipo "double" o coma flotante de doble precisión:
[long] double <identificador>
Las variables de este tipo almacenan números en formato de coma flotante, mantisa y exponente, al igual que float, pero usan mayor precisión. Son aptos para variables de
tipo real. Usaremos estas variables cuando trabajemos con números grandes, pero también necesitemos gran precisión.
En el compilador Dev-C++ float requiere 4 bytes, double 8 y
long double 12, por lo tanto, para manejar un número en formato de long double se requiere el triple de memoria y el triple o más tiempo de procesador que para manejar
un float.
Tipo "void" o sin tipo:
void <identificador>
Es un tipo especial que indica la ausencia de tipo. Se usa en funciones que no devuelven ningún valor, también en funciones que no requieren parámetros, aunque
este uso sólo es obligatorio en C, y opcional en C++, también se usará en la declaración de punteros genéricos.
Las funciones que no devuelven valores parecen una contradicción. En lenguajes como Pascal, estas funciones se llaman procedimientos. Simplemente hacen su trabajo, y no revuelven valores. Por ejemplo, funciones como borrar la pantalla, no tienen nada que devolver, hacen su trabajo y regresan.
Lo mismo se aplica a funciones sin parámetros de entrada, el mismo ejemplo de la función para borrar la pantalla, no requiere ninguna entrada para poder hacer su cometido.
Tipo "enum" o enumerado:
enum [<identificador de tipo>] {<nombre de constante> [= <valor>],
...} [lista de variables];
Este tipo nos permite definir conjuntos de constantes, normalmente de tipo int, llamados datos de tipo enumerado. Las variables declaradas de este tipo sólo podrán tomar valores entre los definidos.
El identificador de tipo es opcional, y nos permitirá declarar más variables del tipo enumerado en otras partes del programa:
[enum] <identificador de tipo> <variable1> [,<variable2>[...]];
La lista de variables también es opcional. Sin embargo, al menos uno de los dos componentes opcionales debe aparecer en la definición del tipo enumerado.
Varios identificadores pueden tomar el mismo valor, pero cada identificador sólo puede usarse en un tipo enumerado.
Por ejemplo:
enum tipohoras { una=1, dos, tres, cuatro, cinco, seis,
siete, ocho, nueve, diez, once, doce,
trece=1, catorce, quince, dieciseis, diecisiete, dieciocho,
diecinueve, veinte, ventiuna, ventidos, ventitres, venticuatro =
0};
En este caso, una y trece valen 1, dos y catorce valen 2, etc. Y veinticuatro vale 0.
Como se ve en el ejemplo, una vez se asigna un valor a un elemento de la lista, los siguientes toman valores correlativos. Si no se asigna ningún valor, el primer
elemento tomará el valor 0.
Los nombres de las constantes pueden utilizarse en el programa, pero no pueden ser leídos ni escritos.
0 comentarios:
Publicar un comentario