sábado, 24 de mayo de 2014


 
 



En este artículo vamos a realizar nuestro primer programa en c++, realmente es un programa muy básico pero siempre es bueno hacer pruebas y ver resultados. Los conceptos de programación se asumen al realizar muchas prácticas, por mucho que se estudien conceptos teóricos hasta que no se practican el cerebro no los asume como asentados. Al practicar los conocimientos teóricos el cerebro los capta y los retiene para siempre. Hoy vas a comprobar un primer programa que va a asentar los conocimientos adquiridos de "La estructura general de un programa en c++". 
También este artículo te va a mostrar los archivos que el compilador o entorno de trabajo devc++ te va a mostrar como pudimos ver en el artículo " Archivos generados al compilar un programa c++" 
 
Para comenzar nuestro primer programa, abre devc++ y en el menú archivo elige la opción código fuente. Te saldrá un archivo .cpp en blanco donde comenzaremos a escribir y a programar. Te voy a mostrar el código que vamos a utilizar para este primer programa. El programa es el famoso hola mundo que lo que hace es mostrarte por pantalla el mensaje “hola mundo”.

Aquí tienes el código que tienes que escribir. Como ves somos fieles a la estructura general de un programa en c++ (en este caso sólo nos hace falta la declaración de librerías básicas y el programa principal con varias instrucciones o sentencias). Hemos usado las librerías básicas, <iostream> es la que nos permite usar la función cout que nos permite sacar mensajes por pantalla y también hemos usado la <conio.h> que nos permite usar la función getch() que nos mantiene la pantalla de resultado. El using namespace std es una llamada a las funciones std de la librería iostream, sólo a las funciones syd (son las que incluye el cout) esta sentencia siempre deberemos de ponerla en nuestros primeros programas.
Para que realmente obtengas los conceptos realiza los siguientes pasos y prueba los resultados que te van a salir:
  1. Copia el código, guárdalo y ejecútalo con el devc++ con el menú ejecutar–>compilar y ejecutar. Al hacer esto el compilador comprobará que el programa esta bien escrito sintácticamente y si no tiene errores lo ejecutará. Comprueba el resultado del programa.
  2. Ahora quita la función getch() del código y ejecútalo de nuevo. ¿Qué ha sucedido?. Comprobarás para que utilizó esta función.
  3. Mira la carpeta donde has guardado el archivo y observa que archivos se han generado.
Realiza estos pasos y tendrás tu primer programa en c++ comprendido 100% y habrás dado un gran paso para el comienzo de tu aprendizaje en c++.
 
 
EJEMPLOS PARA DESARROLLAR PROGRAMAS
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. Semacs hola.cpp &.
 
Para otros sistemas operativos u otros entornos de desarrollo, no necesariamente se sigue este paso.
A continuación se escribe el siguiente código en C++:
Ejemplo
// Aquí generalmente se suele indicar qué se quiere con el programa a hacer // Programa que muestra 'Hola mundo' por pantalla y finaliza // Aquí se sitúan todas las bibliotecas que se vayan a usar con #include, // que se verá posteriormente // Las bibliotecas del sistema son las siguientes #include <iostream> // Función main // Recibe: void // Devuelve: int // Función principal, encargada de mostrar "Hola Mundo",por pantalla int main(void) { // Este tipo de líneas de código que comienzan por '//' son comentarios // El compilador los omite, y sirven para ayudar a otros programadores o // a uno mismo en caso de volver a revisar el código // Es una práctica sana poner comentarios donde se necesiten, std::cout << "Hola Mundo" << std::endl; // Mostrar por std::cout el mensaje Hola Mundo y comienza una nueva línea return 0; // se devuelve un 0. //que en este caso quiere decir que la salida se ha efectuado con éxito.
Mediante simple inspección, el código parece enorme, pero el compilador lo único que leerá para la creación del programa es lo siguiente:
Ejemplo
#include <iostream> int main(void){ std::cout << "Hola Mundo" << std::endl; return 0; }
Como se puede observar, este código y el original no difieren en mucho salvo en los saltos de línea y que los comentarios, de los que se detallan posteriormente, están omitidos y tan sólo ha quedado "el esqueleto" del código legible para el compilador. Para el compilador, todo lo demás, sobra.
O este otro, que es, en parte, como el lenguaje C, en su versión C99, es:
Ejemplo
#include <stdio.h> #include <stdlib.h> int main(void) { printf( "Hola Mundo\n" ); return EXIT_SUCCESS; // 'EXIT_SUCCESS' es una definición que está dentro de 'stdlib.h' // tambien funciona return 0 }

Nota: si se usa Windows, el código es el mismo, pero debemos agregar un metodo mas para que el programa se mantenga abierto y no se cierre la consola, cosa que en linux, no es necesaria por que la consola ya esta abierta (al mandar a ejecutar).
Para esto podemos usar cin.get() que nos permitira leer del teclado, por lo que el programa no finalizara, hasta que el usuario pulse enter.


Ejemplo
#include <iostream> int main(void) { std::cout << "Hola Mundo" << std::endl; std::cin.get(); //con 'std::cin.get();' lo que se hace es esperar hasta que el usuario pulse enter. return 0; }

Los pasos siguientes son para una compilación en Linux o sistema operativo Unix. En Windows tampoco es aplicable.
Con ctrl-x ctrl-s se guarda el archivo. Ahora para generar el ejecutable del programa se compila con g++ de la siguiente forma:
$ g++ hola.cpp -o hola
Para poder ver los resultados del programa en acción, se ejecuta el programa de la siguiente forma:
$./hola
Y a continuación se debe mostrar algo como lo siguiente:
Hola Mundo
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 */
Ejemplo:
/*
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, lógicamente por el hecho de permitir varias líneas 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.
 
Utilización de la consola o terminal
 
 
 
En los ejemplos anteriores se utilizaron 'std::cout'. 'std::cout' es un "objeto" que permite escribir en la consola (la terminal en Linux/Unix/MacOSX), solo se puede utilizar gracias a que se ha incluido definiciones de su uso con la línea de código '#include <iostream>'.
std::cout << ALGO;
Donde ALGO puede ser lo que sea que 'std::cout' sea capaz de mostrar por consola. Más adelante se trata más sobre el en detalle y aclarando posibles dudas que ahora puedan surgir. También se utilizó 'std::endl', esto permite que el texto se escriba en una nueva línea.
 
Un ejemplo más completo sobre la escritura en consola es el siguiente. Ha de tenerse en cuenta que se han eliminado algunos comentarios superfluos del primer programa debido a que ahora se está tratando con más detalle acerca del uso de imprimir texto en la consola:
Ejemplo
// Programa que muestra diversos textos por consola // Las librerías del sistema usadas son las siguientes #include <iostream> // Función: main // Recibe: void // Devuelve: int // Es la función principal encargada de mostrar por consola diferentes textos int main(void) { // Ejemplo con una única línea, se muestra el uso de std::cout y std::endl std::cout << "Bienvenido. Soy un programa. Estoy en una linea de codigo." << std::endl; // Ejemplo con una única línea de código que se puede fraccionar mediante el uso de '<<' std::cout << "Ahora " << "estoy fraccionado en el codigo, pero en la consola me muestro como una unica frase." << std::endl; // Uso de un código largo, que cuesta leer para un programador, y que se ejecutará sin problemas. // *** No se recomienda hacer líneas de esta manera, esta forma de programar no es apropiada *** std::cout << "Un gran texto puede ocupar muchas lineas." << std::endl << "Pero eso no frena al programador a que todo se pueda poner en una unica linea de codigo y que" << std::endl << "el programa, al ejecutarse, lo situe como el programador quiso" << std::endl; return 0; // Y se termina con éxito. }

Se reta a compilar este código y a observar sus resultados. En este momento el lector está capacitado para escribir programas que impriman por pantalla el mensaje que se quiera.
 
Atención: Se hace hincapié en la posibilidad de que las palabras acentuadas no se puedan mostrar en la consola. Depende completamente del compilador el que se pueda ver lo siguiente:
std::cout << "programación";
Con algunos compiladores, verá 'programación', pero con otros puede ver incluso 'programación'.
 
 

No hay comentarios:

Publicar un comentario