Académique Documents
Professionnel Documents
Culture Documents
Introducción
En este tema aplicaremos solamente caracteres para poder armar nuestro programa.
Las constantes enteras representan un int, y pueden estar expresadas en los sistemas
de numeracion decimal octal o hexadecimal. En ausencia de ningún sufijo, el tipo de una
constante entera se deduce de su valor según se muestra en las tablas que sigue:
Observese que las reglas para las constantes decimales son distintas del resto.
Tipos adoptados por las constantes decimales en función del valor declarado (en
ausencia de sufijos L o U)
0 a 32,767 Int
32,768 a 2,147,483,647 Long
2,147,483,648 a 4294967295 Unsigned long
>4294967295 Truncado
Octal
Todas las constantes que empiecen por 0 se suponen en octal. Si una constante de este
tipo contiene digitos ilegales (8 o 9), se produce un mensaje de error; como se indica en
la tabla adjunta, las que exceden del valor máximo 037777777777 son truncadas.
Tipos adoptados por las constantes octales en función del valor declarado ( en ausencia
de sufijos L o U).
00 a 077777 int
010000 a 0177777 Unsigned int
02000000 a 017777777777 Long
020000000000 a 017777777777 Unsigned long
>037777777777 truncado
Hexadecimal
Tipos adoptados por las constantes hexadecimales en función del valor declarado ( en
ausencia de sufijos L o U).
0*0000 a 0*7FFF int
0*8000 a 0*FFFF Unsigned int
0*10000 a 0*7FFFFFFF Long
0*80000000 a 0*FFFFFFFFF Unsigned long
>0*FFFFFFFF truncado
Una constante carácter es uno o mas caracteres delimitados por comillas simples,
como ‘A’, ‘+’, o ‘\n’. en c++, son de un tipo especifico: char del que existen 2 versiones,
signed y unsigned. El valor por defecto, el que se supone cuando no se indica nada en
concreto ( char a secas depende del compilador, pero puede ser seleccionado.
Las constantes de un carácter, tales como ‘A’,’\t’ y ‘007’, son representados como
valores enteros, int (signed). En estos casos, si el valor es mayor que 127, el bit mas
alto es puesto a-1 (=0*FF), es decir, las constantes carácter cuyo valor ASCII es mayor
de 127 se representan como numeros negativos, aunque esto puede ser desactivado
declarando que los caracteres son unsigned por defecto.
Cualquiera de los 3 tipos carácter, char, signed char y unsigned char, se almacenan en
8-bits (un byte).
En los programas a c++, una función puede ser sobrecargada con argumentos de
cualquiera de los 3 tipos: char, signed char y unsigned char (porque son tipos distintos
para el compilador). Por ejemplo, los siguientes prototipos de funciones son validos y
distintos:
void func (char ch);
void fun.(signed char ch);
void func(unsigned char ch);
Constantes reales
Estas se conforman por una parte entera, seguida por un punto decimal y una parte
fraccionaria . se permite la notacion científica, en cuyo caso se añade el valor una e o
E, seguida por un exponente positivo o negativo.
Ejemplos:
-17.24 y 17.244283
una constante real tiene tipo double, a menos que se introduzca en ella una f o F ya
que en tal caso indicara que es de tipo flotante o una l o L que indicara que es un tipo
de long double.
El tipo real consiste en un subconjunto de los numeros reales. Los numeros reales
siempre tienen un punto decimal y pueden ser positivos o negativos. Un numero real
consta de un entero y una parte decimal.
#include<iostream.h>
#include<string.h>
#include<conio.h>
int main()
{
char cadena[100];
char *pcad;
char *pcad2;
int longitud=0;
pcad=cadena;
longitud= cadena;
pcad2= pcad+(longitud-1);
while(pcad2!=pcad)
{
cout<<pcad2<<endl;
pcad2--;
}
cout<<*pcad<<endl<<endl;
returno 0;
}