Tipos de datos
Hay dos clases de tipos de datos: tipos fundamentales y tipos derivados.
Tipo entero: representa números enteros con o sin signo, que estarán compuestos por los dígitos del 0 al 9, pudiendo ser precedidos por los signos + o -.
Algunos ejemplo de datos enteros son: 0, 23, -176, -1, etc.
Para definir variables en C se antepone la palabra reservada del tipo al identificador de la variable. El tipo de datos entero se define en el lenguaje de programación C por la palabra reservada int.
Tipo real: Se emplean para representar números reales (con decimales).
Para definir datos reales se antepone la palabra reservada float al identificador de la variable.
float identificador = valor;
Tipo carácter: Este tipo de datos se emplea para representar un carácter perteneciente a un determinado código utilizado por el ordenador (normalmente el código ASCII).
Para representar este tipo de dato se antepone la palabra reservada char al identificador de la variable.
Char identificador = ‘valor’;
Tipo cadena de caracteres: Una cadena de caracteres es un número de caracteres consecutivos (incluso ninguno) encerrado entre unos delimitadores determinados, que en el lenguaje C son las comillas dobles.
Para definir variables de tipo cadena, estas se definen como vectores de caracteres, esto es, anteponiendo la palabra reservadachar al identificador de la variable, y después entre corchetes la longitud máxima de cadena.
Char identificador[cantidad] = “ mensaje ”;
Tipo de dato
|
Palabra reservada
|
Ejemplo
| |
Entero
|
Int
|
Int numero=0;
| |
Real
|
Float
|
Float numero=12.2;
| |
Carácter
|
Char
|
Char letra = ‘a’;
| |
Cadena de carácter
|
Char
|
Char palabra[10] = “HOLA”;
|
Secuencia de Escape
Las secuencias de caracteres en las que el primero es la barra invertida, se denominaron secuencias de escape y aunque originariamente se utilizaron para la representación de los caracteres de control, por extensión pueden representarse de este modo todos los códigos ASCII. Además se dispone de algunos símbolos predefinidos para los caracteres más frecuentes.
\n Nueva línea. Coloca el cursor en el principio de la siguiente línea.
\t Tabulador horizontal. Mueve el cursor al siguiente tabulador.
\rRetorno de carro. Coloca el cursor hacia el principio de la línea actual.
\a Alerta. Suena la beep del sistema.
\\ Imprime la diagonal invertida. Una sola diagonal sería interpretada como un carácter de escape.
\” Imprime la doble comilla. Sin la diagonal invertida, se interpretaría como un inicio o un fin de una cadena.
\r
\\ Imprime la diagonal invertida. Una sola diagonal sería interpretada como un carácter de escape.
\” Imprime la doble comilla. Sin la diagonal invertida, se interpretaría como un inicio o un fin de una cadena.
Operadores Aritmeticos .
Los operadores aritméticos en C son:
Suma +
Resta -
Multiplicación *
División /
Modulo %
Suma +
Resta -
Multiplicación *
División /
Modulo %
numero1 = 4;
total = 3 + numero1;
total = total * total;
También pueden utilizarse el uso de paréntesis en las fórmulas matemáticas para cuestiones de precedencia.
En tanto, los operadores lógicos (que se usarán más adelante) son:
== operador de igualdad en C
!= operador de desigualdad
> mayor
< menor
>= mayor o igual
<= menor o igual
Ejemplo de uso:
resultado = 20 >= 2;
Almacena en la variable resultado el valor lógico TRUE (verdadero), porque la sentencia es verdadera, 20 es mayor o igual a 2.
resultado = 20 >= 2;
Almacena en la variable resultado el valor lógico TRUE (verdadero), porque la sentencia es verdadera, 20 es mayor o igual a 2.
Al igual que en matemáticas, estos operadores nos permitirán evaluar las relaciones (igualdad, mayor, menor, etc) entre un par de operandos (en principio, pensemos en números). Los operadores relacionales de los que disponemos en C son:
|
Precedencia de operadores
La interpretación de cualquier expresión en C++ está determinada por la precedencia y asociatividad de los operadores en dicha expresión. Cada operador tiene una precedencia, y los operadores en una expresión se evalúan en orden de mayor a menor precedencia. La evaluación de operadores con la misma precedencia viene determinada por su asociatividad. Y, al igual que en matemáticas, los paréntesis anulan las reglas de precedencia.
En la siguiente tabla se listan los operadores en C++, su precedencia y su asociatividad. Los operadores se listan en orden de prioridad decreciente (los situados más arriba tienen mayor prioridad). Los operadores en la misma línea horizontal tienen la misma precedencia.
En la siguiente tabla se listan los operadores en C++, su precedencia y su asociatividad. Los operadores se listan en orden de prioridad decreciente (los situados más arriba tienen mayor prioridad). Los operadores en la misma línea horizontal tienen la misma precedencia.
Operador
|
Propósito
|
Asociatividad
|
::
|
Scope (unario)
|
De derecha a izquierda
|
::
|
Scope (binario)
|
De izquierda a derecha
|
-> .
|
Selección de miembros
|
De izquierda a derecha
|
[]
|
Índices
|
De izquierda a derecha
|
()
|
Llamada a función
|
De izquierda a derecha
|
++
|
Postincremento
|
De izquierda a derecha
|
--
|
Postdecremento
|
De izquierda a derecha
|
sizeof
|
Tamaño de un objeto
|
De derecha a izquierda
|
++
|
Preincremento
|
De derecha a izquierda
|
--
|
Predecremento
|
De derecha a izquierda
|
* & + - ! ~
|
Operadores unarios
|
De derecha a izquierda
|
new
|
Crea un objeto
|
De derecha a izquierda
|
delete
|
Borra un objeto
|
De derecha a izquierda
|
()
|
Conversión de tipo (type cast)
|
De derecha a izquierda
|
->* .*
|
Puntero a un miembro
|
De izquierda a derecha
|
* / %
|
Operadores multiplicativos
|
De izquierda a derecha
|
+ -
|
Operadores aditivos
|
De izquierda a derecha
|
<< >>
|
Operadores bitwise
|
De izquierda a derecha
|
< > <= >=
|
Operadores de relación
|
De izquierda a derecha
|
== !=
|
Operadores de igualdad
|
De izquierda a derecha
|
&
|
Y bitwise
|
De izquierda a derecha
|
^
|
bitwise O exclusivo
|
De izquierda a derecha
|
|
|
bitwise O inclusivo
|
De izquierda a derecha
|
&&
|
Y lógico
|
De izquierda a derecha
|
||
|
O lógico
|
De izquierda a derecha
|
?:
|
Operador condicional
|
De derecha a izquierda
|
= *= /= += -= >*gt;=
&= ^= |= %= <<= |
Operadores de asignación
|
De derecha a izquierda
|
,
|
Operador coma
|
De derecha a izquierda
|
Manipuladores de flujo
C++ proporciona una nueva biblioteca de funciones que realizan operaciones de E/S: la biblioteca iostream. Esta biblioteca es una implementación orientada a objetos y está basada, al igual que stdio, en el concepto de flujos. Cuando se introducen caracteres desde el teclado, puede pensarse en caracteres que fluyen desde el teclado a las estructuras de datos del programa. Cuando se escribe en un archivo, se piensa en un flujo de bytes que van del programa al disco.
Para acceder a la biblioteca iostream se debe incluir el archivo iostream.h. Este archivo contiene información de diferentes funciones de E/S. Define también los objetos cin ycout.
Manipuladores de salida.
La biblioteca iostream define varios operadores particulares, llamados manipuladores, que le permiten controlar precisamente, el formato de los datos visualizados. Situando un manipulador en la cadena de operadores <<, se puede modificar el estado del flujo.
Una característica importante de un flujo que debe tratar con valores numéricos es la base de los números. Hay tres manipuladores (dec, hex y oct) para controlar la situación. La base por omisión es 10 y por tanto sólo será necesario indicar dec cuando se haya fijado la base a otro valor:
cout << oct<<x<<endl;
cout <<dec<<x<<endl;
Los manipuladores que toman argumentos se declaran en iomanip.h, el resto en iostream.h.
Acontinuancion mostraremos un listado con los manipuladores, su aplicacion y la descripcion, Cada uno de ellos lo separaremos mediante --.
dec--cout<<dec<<x; -- Conversion a decimal
dec--cin>>dec>>x; --Conversion a decimal
hex--cout<<hex<<x;--Conversion a hexadecimal
hex--cin>>hex>>x;--Conversion a hexadecimal.
Cristina Villoria ( 2011 ) Tipos de datos. http://recursostic.educacion.es/observatorio/web/es/software/programacion/972-tipos-de-datos
Ramon Pons Vivanco (2003). Operadores relacionales. http://laurel.datsi.fi.upm.es/~rpons/personal/trabajos/curso_c/node49.html
Alegsa ( 2007 ) Secuencia de Escape. http://www.alegsa.com.ar/Notas/97.php




No hay comentarios:
Publicar un comentario