Cursillo de C++ (II).
Aquí está la segunda entrega del cursillo. Esta entrega espero que sirva para que si no has visto nunca un programa de C++, te vayan acostumbrando a su aspecto. Si por el contrario has tenido oportunidad de ver programas o tienes experiencia con C, tes sonará a concocido (o eso espero).
Si algo no queda claro, no dudes en preguntar. Si no te has enterado de nada, no me importa volver a redactar la entrega, basta con que lo digas. O sea que estoy a la espera de tus preguntas, comentarios, etc.
Cuando el curso haya avanzado algo, espero poder empezar a poner ejercicios, pero todavía es algo pronto para ello.
Los numeritos entre paréntesis detrás de algunas palabras son notas a pié de página. Las he puesto al final del texto. Generalmente son aclaraciones sobre palabras que seguramente no conozcas o adelantar algo de materia :).
Et voilá!
=== { /*cpp_2.txt*/ ===
2 EL PROGRAMA DE »¡Hola mundo!«
En esta sección veremos:
~~~~~~~~~~~~~~~~~~~~~~~~
Los comentarios. Decir qué vamos a utilizar para que el compilador sepa cómo se utiliza. Dónde ponemos el código. Los datos.
Contenido:
~~~~~~~~~~
EL PROGRAMA DE "HOLA MUNDO"
Pues para empezar con algo tangible, vamos a ver el típico programa de »¡Hola mundo!« (sí, ese que lo único que hace es poner en pantalla ese curioso saludo). Pues no esperemos más, aquí lo tenemos:
===[hola.cpp]===
/*
* hola.cpp
*/
#include <iostream.h>
void
main() {
cout << "¡Hola Mundo!";
}
===[hola.cpp]===
Ya tenemos ahí un pequeño programita que hace algo, poner un mensaje en la pantalla. Nos va a servir para ver cómo es un programita en C++. Si bien el ejemplo es casi la mínima expresión de lo que se puede hacer, ya tiene los suficientes elementos como para que se merezca un examen más detallado.
Un programa sencillo de C++ lo podemos dividir en varias partes. Vamos a ver las de éste, pero antes voy a numerar las líneas del programa anterior para poder hacer referencia a las diferentes partes.
===[hola.cpp]===
1: /*
2: * hola.cpp
3: */
4:
5: #include <iostream.h>
6:
7: void
8: main() {
9: cout << "¡Hola Mundo!";
10: }
===[hola.cpp]===
Este programita sólo tiene tres partes:
Líneas 1-3: comentarios
Línea 5: en este caso, mencionar que mire cómo se usa el cout que utilizaremos después(1).
Líneas 7-10: es el programa en sí mismo (aquí, simplemente el código). Contiene el cuerpo (código) de las funciones.
Vamos a verlas con un poco más de detalle y digamos algo sobre cada una de ellas.
ANALISIS DEL PROGRAMA
Comentarios (líneas 1 a 3):
Los comentarios en C++ pueden ser de dos formas; rodeando un texto (las que he utilizado en el programa) y las que indican que el resto de la línea es un comentario. Los comentarios que se delimitan por los extremos, se empiezan con un /* (barra-asterisco) y se terminan con un */ (asterisco-barra). Todo lo que esté entre esas dos cosas es un comentario, que puede ser de varias líneas de longitud. Un ejemplo:
/* Yo soy un comentario de varias
líneas, no importa el tamaño */
Los otros asteriscos que se ven en el programa (línea 2) son sólo de "adorno".
El otro tipo de comentarios, que no aparecen en el programa, son los de una sóla línea, y su inicio se indica con un // (barra-barra), su fin es el fin de la línea (el ENTER, por decirlo de alguna manera). Un ejemplo:
// Comentario de una sóla línea
Los comentarios del tipo de /**/ son los que había en el lenguaje C (y por supuesto, sigue habiéndolos en C++), mientras que los de // son exclusivos del C++. Una cosa más: los comentarios se puede poner prácticamente en cualquier sitio.
Incluir ficheros de prototipos (línea 5):
Como ya he mencionado de pasada antes, en esta línea le decimos que mire el fichero que se indica entre < > (mayores y menores que). Normalmente un programa tendrá varias líneas de estas, ya veremos cuándo necesitamos utilizarlas.Un pequeño adelanto: las líneas que empiezan por # (almohadilla) se tratan de forma especial y se denominan directivas del preprocesador. Ese nombre tan curioso les viene porque la parte del compilador(2) que las interpreta es el preprocesador, y las dos más comunes son #include y #define(3).
Código (líneas 7 a 10):
Todo lo anterior estaba muy bien, pero nosotros queremos un programa que haga algo. ¿Y dónde ponemos las cosas que queremos que haga? En main() (4).
Cuando nosotros ejecutemos el programa, lo que va a ir haciendo es la lista de cosas que le hayamos puesto dentro de main(), si miras el listado, verás en la línea 8 un { (abrir-llave) y en la línea 10 un } (cerrar-llave), que delimitan lo que es main() propiamente dicho.
La palabra void que hay antes de main() indica que main() no devuelve ningún resultado al sistema operativo (void significa vacío).
En el cuerpo de la función (la parte entre llaves) nos encontramos con una sóla instrucción (línea 9), en la cual se manda un mensaje a cout. Antes habíamos »incluído« el fichero iostream.h (línea 5), sólo para que el compilador supiera cómo se puede llamar a cout. Pues bien, cout representa el dispositivo de salida estándar, que suele ser la pantalla, y está definido de tal manera que las cosas que queramos que se impriman en pantalla se le pasan poniendo entre el cout y el mensaje un << (menorque-menorque).
El ; (punto y coma) es para decir que ahí termina la instrucción. Siempre, después de una instrucción, va un punto y coma. Recuérdalo, porque siempre se termina olvidando alguno y el compilador dirá que hay algún error en el programa, pero con mensajes de error no siempre claros.
¿Y LOS DATOS?
Pues en ese programa tan pequeño, no se han definido esplícitamente datos. Los datos se pueden poner en cualquier sitio, pero sólo puedes utilizarlos en un sitio posterior a donde se han definido (en C había una restricción para las definiciones de datos dentro de una función: sólo podían estar justo detrás del { (abrir-llave) o siguiendo a otra definición de datos).
Otra cosa más sobre los datos: no es lo mismo colocarlos dentro que fuera de un cuerpo de una función (si es dentro de una función sólo se puede utilizar dentro de la función en la que se ha definido y antes del siguiente } (cerrar-llave).
Todo esto lo veremos cuando lleguemos al capítulo de las variables, por ahora nos basta con saber que sí se pueden poner datos en diferentes partes del programa y que importa el lugar donde se coloquen.
Esto es todo en esta entrega, ya nos veremos en la siguiente...
-+-
(1) Al texto que le dice al compilador cómo se usa 'algo' se le denomina prototipo, y la línea esa le dice que incluya, es decir, que se mire, el fichero de prototipos con el nombre iostream.h
(2) Entendiendo por compilador el programa que coge el fichero fuente de un determinado lenguaje y genera un programa que el ordenador pueda entender, lo cual no es ser muy rigurosos.
(3) Ya lo veremos más adelante cuando de las nociones básicas sobre el preprocesador, pero si te pica la curiosidad #define permite hacer dos cosas, poder llamar a las constantes con un nombre (p. ej decir DISTANCIA_MAXIMA en vez de 50) y crear macros, que son una especie de constantes parametrizadas... pero eso ya es materia de otro capítulo, ya veremos cada cosa a su tiempo.
(4) Como main es una función, la pondremos seguida de paréntesis, quedando main(). Las funciones son la base de la programación estructurada, y se utilizan para agrupar una secuencia de intrucciones (cosas que quieres que haga el ordenador) que son para un fin común. Ya te habrás dado cuenta que main significa principal, y es porque es la función principal del programa, la que irá llamando al resto para hacer el cometido exacto del programa. Siendo más rigurosos, main() representa el punto de entrada del programa.
=== } /*cpp_2.txt*/ ===
Espero que te haya gustado esta toma de contacto. Te espero en la próxima entrega ;).
Datos del autor/a:
Nombre: Dario Rodriguez.
Votaciones en general - Comentario a los relatos (mes anterior) - Comentario a los relatos (mes presente) - Estadísticas de los comentarios y votaciones.
[Indice general] - [Sexo] - [linux] - [humor] - Chat entre usuarios - [miscelanea] - [Novedades] -
![]()