sábado, 24 de mayo de 2014

Proceso de desarrollo de un programa en C++


Si se desea escribir un programa en C++ se debe ejecutar como mínimo los siguientes pasos:
1. Escribir con un editor de texto plano un programa sintácticamente válido o usar un entorno de desarrollo (IDE) apropiado para tal fin.
2.Compilar el programa y asegurarse de que no han habido errores de compilación.
3.Ejecutar el programa y comprobar que no hay errores de ejecución
Este último paso es el más costoso, por que en programas grandes, averiguar si hay o no un fallo prácticamente puede ser una tarea totémica.
Como ejemplo, si se desea escribir un archivo con el nombre hola.cpp y en él escribir un programa con emacs, por ejemplo, que es un programa de edición de textos, se puede, en Linux, ejecutar el siguiente comando:
$emacs hola.cpp &
Para otros sistemas operativos u otros entornos de desarrollo, no necesariamente se sigue este paso.

Comentarios

Cuando se escriben programas es muy útil agregar comentarios que ayuden a explicar lo que realiza un programa. En C++ se pueden utilizar tres tipos de comentarios: al estilo C, al estilo C++ y usando preprocesador.
Los comentarios al estilo C se caracterizan por lo siguiente: comenzar el "bloque" de comentarios con /* y terminar dicho "bloque" de comentarios con */
Ej:
/* 
 
Este es un comentario al estilo C.
Todo lo escrito dentro de las etiquetas de apertura y cierre es un comentario.
A estos comentarios se le llaman multilinea, logicamente
por el hecho de permitir varias lineas de comentarios.
 
 */
Si se usan este tipo de etiquetas de comentarios, hay que tener cuidado con el cierre (*/), por que el compilador puede tomar todo el texto como comentario, o cerrar antes de lo deseado.
Usando el estilo de código de C++ sólo pueden ocupar una línea como en el siguiente código:
// Este es un comentario al estilo C++
Una buena práctica de programación es pensar que se programa a sabiendas de que otro programador, tal vez el lector mismo en un futuro, tenga que "desencriptar" qué quiso hacer ahí y por qué.
Otra posible forma de comentar código es usando el preprocesador. Esto se detallará más adelante en profundidad, por ahora la parte útil del preprocesador que interesa es la siguiente:
 #if 0
 Comentarios sobre el programa /parte del programa.
 Pueden ocupar múltiples líneas.
 
 Más complicado de visualizar que los comentarios C/C++
 #endif

Este tipo de comentarios se usan rara vez. Generalmente son difíciles de localizar, incluso para programadores experimentados que trabajan en papel, y son fáciles de distinguir en casi cualquier IDE. Es recomendable indicar que se tratan de comentarios, o directamente no usarlos, salvo si son grandes cantidades de comentarios. Se verá más adelante que también puede tener otros usos.

Sintaxis

Sintaxis es la forma correcta en que se deben escribir las instrucciones para el computador en un lenguaje de programación específico. C++ hereda la sintaxis de C estándar, es decir, la mayoría de programas escritos para el C estándar pueden ser compilados en C++.

El punto y coma

El punto y coma es uno de los simbólos más usados en C, C++; y se usa con el fin de indicar el final de una línea de instrucción. El punto y coma es de uso obligatorio.

ejemplo
´´´´´´
clrscr(); //Limpiar pantalla, funciona solo con la librería conio de Borland C++
x = a + b;
 
string IP = "127.0.0.1"; // Variable IP tipo string
cout << IP << endl; // Devuelve 127.0.0.1
 
char Saludo[5] = "Hola"; // Variable Saludo tipo char
cout << Saludo[0] << endl; // Igual a H
cout << Saludo[1] << endl; // Igual a o
cout << Saludo[2] << endl; // Igual a l
cout << Saludo[3] << endl; // Igual a a

El punto y coma se usa también para separar contadores, condicionales e incrementadores dentro de un sentencia for

ejemplo
for (i=0; i < 10; i++) cout << i;

Espacios y tabuladores

Usar caracteres extras de espaciado o tabuladores ( caracteres tab ) es un mecanismo que nos permite ordenar de manera más clara el código del programa que estemos escribiendo, sin embargo, el uso de estos es opcional ya que el compilador ignora la presencia de los mismos. Por ejemplo, el segundo de los ejemplos anteriores se podría escribir como:
for (int i=0; i < 10; i++) { cout << i * x; x++; }
y el compilador no pondría ningún reparo.

Tipos primitivos

En un lenguaje de programación es indispensable poder almacenar información, para esto en C++ están disponibles los siguientes tipos que permiten almacenar información numérica de tipo entero o real:
NombreDescripciónTamaño*Rango de valores*
charCarácter o entero pequeño1bytecon signo: -128 to 127
sin signo: 0 a 255
short int (short)Entero corto2bytescon signo: -32768 a 32767
sin signo: 0 a 65535
intEntero4bytescon signo: -2147483648 a 2147483647
sin signo: 0 a 4294967295
long int (long)Entero largo4bytescon signo: -2147483648 a 2147483647
sin signo: 0 a 4294967295
boolValor booleano. Puede tomar dos valores: verdadero o falso1bytetrue o false
floatNúmero de punto flotante4bytes3.4e +/- 38 (7 digitos)
doubleDe punto flotante de doble precisión8bytes1.7e +/- 308 (15 digitos)
long doubleLong de punto flotante de doble precisión8bytes1.7e +/- 308 (15 digitos)

  • Los valores dependen de la arquitectura utilizada. Los mostrados son los que generalmente se encuentran en una máquina típica de arquitectura 32 bits.

El modificador long

El modificador long le indica al compilador que el tipo debe utilizar más bits que los normalmente utilizados por ejemplo si tenemos en una maquina de 32 bits como un Pentium de Intel, normalmente de un int ocupara 32 bits, pero si al declararlo un entero le antecedemos long el entero ocupa 64 bits, el siguiente código muestra como utilizar este modificador:
  int corto;      // Entero de 32 bits 
  long int largo; // Entero de 64 bits

El Modificador short

Similar al anterior, pero indica que se deben utilizar menos bits. Por ejemplo, en un computador de 32 bits, un short int ocupa 16 bits.

El Modificador unsigned

El modificador unsigned es utilizado únicamente con los enteros, su utilización permite utilizar en los enteros únicamente la parte positiva.
            int a; // Almacena valores entre -32768 y 32767
unsigned int a; // Almacena valores entre 0 y 65535

Variables y constantes

Una variable, como su nombre lo indica, es un determinado objeto cuyo valor puede cambiar durante el proceso de una tarea específica. Contrario a una variable, una constante es un determinado objeto cuyo valor no puede ser alterado durante el proceso de una tarea específica. En C, C++ para declarar variables no existe una palabra especial, es decir, las variables se declarán escribiendo el tipo seguido de uno o más identificadores o nombres de variables. Por otro lado, para declarar constantes existe la palabra reservadaconst, así como la directiva #define. A continuación se muestran ejemplos de declaración de variables y constantes.
VariablesConstantesConstantes
int a;const int a = 100;#define a 100
float b;const float b = 100;#define b 100
Notas:
A diferencia de las constantes declaradas con la palabra const los símbolos definidos con#define no ocupan espacio en la memoria del código ejecutable resultante.
El tipo de la variable o constante puede ser cualquiera de los listados en Tipos primitivos, o bien de un tipo definido por el usuario.
Las constantes son usadas a menudo con un doble propósito, el primero es con el fin de hacer más legible el código del programa, es decir, si se tiene (por ejemplo) la constante numerica 3.1416 y esta representa al número pi, entonces podemos hacer declaraciones tales como:
#define pi 3.1416

En este caso podremos usar la palabra pi en cualquier parte del
programa y el compilador se encargará de cambiar dicho simbolo por 3.1416.
o bien,
const pi = 3.1416;

En este otro caso podremos usar la palabra pi en cualquier parte del programa y el compilador se encargará de cambiar 
dicho símbolo por una referencia a la constante pi guardada en la memoria.

No hay comentarios:

Publicar un comentario