En la última edición de esta saga, dimos por concluído el aprendizaje de Pseudo-código, un paso importante al momento de aprender a programar. Tan importante como el que prometimos que daríamos ahora, el ingreso al mundo de los lenguajes reales de programación.
Hoy, y en las próximas ediciones, nos adentraremos de lleno en la programación en C, donde intentaremos cubrir todo lo posible para que podamos convertirnos en unos aces de la programación.
Todo el detalle, como siempre, después del salto.
Viendo que ahora ingresaremos a la programación propiamente tal, es bueno indicar los:
Con todo eso claro, vamos a los contenidos que cubriremos hoy:
Nota: La instalación del entorno de programación, hemos decidido no cubrirla, ya que es bastante estándar en lo que a instalaciones de programas se refiere. Les recomendamos hacer la instalación de forma normal, dándole siguiente en las ventanas y dejando las opciones que vienen por defecto. Más adelante indicaremos si es necesario hacer cambios sobre esto.
Y bueno, llegamos al momento que tanto esperabamos: Empezar a trabajar con lenguajes reales de programación.
Para comenzar, hemos optado por el lenguaje C, debido a que por su forma y paradigma, es un buen y simple lenguaje para continuar el aprendizaje. Además, como iremos viendo a medida que nos adentremos en los siguientes capitulos, tiene mucha similitud con el Pseudo-código que hemos visto hasta ahora.
C es un lenguaje de programación que fue creado en 1972 en los laboratorios Bell. Utiliza un paradigma estructurado (también denominado como imperativo y/o procedural) y presenta una eficiencia notable en su código, además de características de bajo nivel que permiten controlar algunos aspectos de memoria y perifericos, por lo que se convierte en la elección favorita e idónea al momento de desarrollar aplicaciones e incluso desarrollos para Sistemas Operativos.
Los programas desarrollados en C, presentan una estructura bastante similar a la que habíamos visto hasta el momento en Pseudo-código, con algunas adiciones (como las librerías, que ya veremos) y uno que otro cambio, sobretodo en las palabras reservadas y algunas formas de definir cosas. Todo esto lo iremos viendo a su debido tiempo.
En resumen, algunos puntos a considerar para el futuro:
Iremos viendo más sobre estas y otras consideraciones y detalles a medida que vayamos avanzando en nuestro aprendizaje.
Un punto muy importante dentro de la programación, en especial en el lenguaje C, son las famosas y nunca bien ponderadas librerías.
¿Qué es una librería?
Una librería es una plantilla que contiene una serie de funciones, las cuales pueden ser utilizadas por un programa que ha invocado esta librería al inicio. Las librerías normalmente representan una “categoría” de funciones (por ej. existe una librería donde están todas las funciones matemáticas más comunes) y de acuerdo a eso las invocamos.
El lenguaje C nos proporciona múltiples librerías para nuestras necesidades, por lo que cada vez que necesitemos realizar una determinada acción, podemos hacer una búsqueda de la función y por ende librería correspondiente. Adicionalmente, podemos crear nuestras propias librerías y utilizarlas libremente (así como otras que han sido creadas por otros usuarios y puestas a disposición en Internet).
Podemos reconocer las librerías por su extensión que es la letra “h”. Por ejemplo, si tuviéramos la librería comolohago, la encontraríamos como comolohago.h. Estas librerías se encuentran en el directorio include de nuestra instalación correspondiente al entorno de programación.
Tal como indicabamos en la definición, las librerías deben ser invocadas o en estricto rigor “incluidas” en el programa donde las vayamos a utilizar. Para esto, al inicio, en las primeras líneas de nuestro programa, debemos utilizar la sentencia #INCLUDE y el nombre de la librería entre < y >. Por ejemplo, si quisiéramos incluir la librería “ejemplo.h”, pondríamos al inicio de nuestro programa:
#INCLUDE <ejemplo.h>
Podemos incluir las librerías que queramos (siempre que existan). Sin embargo, no es recomendable incluir librerías que no vayamos a utilizar, ya que es un gasto extra sobre el programa. En caso de que alguna de las funciones, o sentencias de nuestro programa necesite de una librería que no hayamos incluido, al momento de compilar nos lanzará un error avisándonos del hecho.
Antes de concluir con el capítulo sobre las librerías, es bueno añadir que las más comunes que se usan en prácticamente el 100% de los programas en C son las librerias stdlib.h y stdio.h, por lo que siempre es bueno añadirlas. Otra de las comunes es la conio.h, pero no es utilizada todo el tiempo y probablemente no la requeriremos hasta que vayamos mucho más adelante.
Al igual que en Pseudo-código, en lenguaje C, así como en otros lenguajes, contamos con variables para almacenar, operar y mostrar datos.
No entraremos en detalles sobre definiciones de que es una variable, porque esos temas ya los hemos cubierto en números anteriores. Nos dedicaremos de lleno a cubrir las variables en C, las cuales son muy similares a las que utilizabamos en Pseudo-lenguaje. Entre las más comunes que utilizaremos:
Esas son las variables principales que utilizaremos al programar. Iremos conociendo otras y viendo variaciones de estas mismas a medida que vayamos adentrándonos más y viendo más ejemplos.
En nuestros primeros programas de Pseudo-código, utilizamos una serie de funciones básicas para leer datos desde teclado o mostrarselos al usuario, así como operaciones matemáticas y otras cosas similares que nos ayudaron a llevar a cabo nuestros programas más simples.
En C tenemos estos mismos operadores y funciones, con unas leves diferencias como veremos a continuación:
a) La Función Principal: En Pseudo-código utilizabamos la función principal ( ) que era donde escribíamos el cuerpo del programa. En C también tenemos una función principal, pero la diferencia es que aqui tiene un tipo (tipo int) y su nombre es main. Entonces, para declarar la función principal decimos:
int main( ) { código del programa }
Adicionalmente, podemos decir que la función main de C, cuenta con 2 parámetros como argc (de tipo int) y argv (de tipo char, es un vector). Estos parámetros corresponden a argumentos que nosotros le podemos dar a un programa particular, siendo el primero un entero que indica el número de argumentos, y el segundo un vector de tipo char que contiene en cada posición los argumentos que enviamos. Esto es un poco avanzado, así que no lo veremos aún, pero podremos apreciar que es bastante útil.
b) Mostrando información por pantalla: Cuando queríamos mostrar algún tipo de información en pseudo-código, utilizabamos la sentencia mostrar. En C, utilizaremos printf, la cual se utiliza de la misma forma que la veníamos utilizando hasta ahora, es decir:
printf("mensaje"); o bien printf("%tipo de variable",nombre de la variable);
Se puede utilizar una combinatoria de ambas. En la parte de %tipo de variable, utilizamos los tipos definidos en el lenguaje C, como por ejemplo:
%d: Si la variable es un entero (int).
%f: Si la variable es un decimal o punto flotante (float).
%c: Si la variable es un caracter (char).
c) Leyendo información desde teclado: Tal como debemos recordar, en pseudo-código utilizabamos la sentencia leer. En lenguaje C, utilizaremos scanf, que funciona de la misma forma que la hemos utilizado hasta ahora, es decir:
scanf("%tipo de variable",&nombre de la variable);
Como podemos apreciar, hay una diferencia con el caso de printf, y es que acá al momento de hacer un scanf, al lado del nombre de la variable añadimos un &. Esto es necesario, ya que así le decimos al programa que guarde la información en el área de memoria que asignamos para esa variable cuando la declaramos. A esa área de memoria accedemos con &.
Cuando incluimos una sentencia de tipo scanf, el programa se detiene hasta que el usuario ingresa datos y presiona enter, por lo que tenemos la seguridad que el resto del programa no se ejecutará hasta que se cumpla esa acción.
d) Operadores matemáticos y lógicos: Son bastante similares a los que utilizabamos en pseudolenguaje, o sea:
Existen otros que iremos viendo a medida que los vayamos necesitando.
Para terminar con el capitulo de hoy, nos tomaremos un pequeño descanso de tanta teoría, y realizaremos nuestro primer programa en C. Para eso, crearemos un archivo fuente donde estará nuestro código en nuestro entorno de programación (Si instalaron Dev-C++ vamos al menú Archivo > Nuevo > Archivo Fuente o bien presionamos CTRL + N) con lo que se abrirá una plantilla en blanco. Ahí es donde escribiremos el código.
Entonces bien, tal como fue clásico en pseudo-código, aquí lo seguirá siendo, así que haremos nuestro nunca bien ponderado Hola Mundo, pero ahora en C. El código a continuación, y los comentarios como siempre, en negrita, cursiva y entre /* y */:
#include <stdlib.h> #include <stdio.h> /* Partimos por incluir las librerías stdlib.h y stdio.h mediante #include */ int main() /* Declaramos la función principal */ { printf("Hola Mundo"); /* Mostramos el mensaje */ }
Con el código escrito, no nos queda más que probar nuestro programa. Así que primero vamos al menú Ejecutar > Compilar o bien presionamos CTRL + F9 en nuestro teclado. Esto nos pedirá guardar el programa y se abrirá una ventana, ahí colocamos como nombre holamundo.c (o bien el que uds quieran pero con la extensión .c) y en tipo seleccionamos C source files (*.c).
Guardamos y el entorno de programación compilará (o sea revisará el programa que escribimos en busca de errores). Si encuentra algún error, nos indicará abajo donde está la falla. De lo contrario nos dirá que está listo y sin errores, por lo que presionamos Cerrar en la ventana de aviso.
Luego, vamos al menú Ejecutar > Ejecutar o bien CTRL + F10 en nuestro teclado, y nuestro programa correrá (no saldrá corriendo, sino que se ejecutará).
¿Funcionó?, ¿Se ejecutó y desapareció?, no se asusten. No hay nada malo con el programa. Es el entorno de programación que por defecto cuando un programa termina, cierra la ventana de ejecución. Por ahora haremos un pequeño truco para poder visualizar nuestro programa de forma correcta.
Añadiremos luego del mensaje, una función básica de C llamada getch();, la cual cumple la función de dejar el programa en espera hasta que el usuario presione una tecla, así podremos ver el resultado. Así que nuestro nuevo código quedaría de la siguiente forma:
#include <stdlib.h> #include <stdio.h> int main() { printf("Hola mundo"); getch(); }
Compilamos y ejecutamos de nuevo y veremos la ventana con el resultado de nuestro programa, o sea, el mensaje “Hola Mundo”. Para cerrar solo presionamos una tecla.
Y con eso terminamos por hoy, donde hemos dado nuestros primeros pasos en el lenguaje C e incluso hemos realizado nuestro primer programa.
En la próxima edición:
Por ahora, recuerden que como siempre, este tutorial ha sido:
Cualquier duda o comentario, pueden dejarnos unas líneas en el área habilitada a continuación.
Esperamos que este tutorial haya sido de utilidad para Uds.
Muchas gracias por leer y será hasta una próxima oportunidad.
5:30:11 pm
u perdon es que no se editar como deveria poner ?
5:38:58 pm
@lucas: Ese Hola Mundo debes encerrarlo en comillas, así: “Hola Mundo”
8:12:40 pm
bueno antes que nada agradecer por los tutoriales, ya que son de mucha ayuda… y tengo un problema que pude solucionar gracias a un amigo que posteo mas arriba…
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main()
{
printf(“Hola mundo”);
getch();
}
bueno la
funcion getch();
no funciona si no llamamos a la libreria
#include <conio.h>
…. es que en el ejemplo que nos dan no sale escrita esa libreria y en Dec-C++ no funciona sin incluirlos….gracias
11:15:17 pm
hola me encanto este sitio xd
esta super bien explicado
yo hace algunos años tube un ramo en la universidad de computacion y ocupabamos el pseint como pseudo interprete y es super bueno para empesar, ademas de estar en español XD
sobre getch() me di cuenta que si guardas el programa en formato .c++ nesesariamete se va a nesesitar agregar #include <conio.h>
no obstante si se guarda el archivo en formato .c no sera nesesario incluir la libreria conio.h
ademas tengan en cuenta al guardar el archivo que no basta con poner en tipo la extencion .c sino que tambien tendran que especificar el .c al final del nombre del archivo, si nolo hacen de esta forma el archivo automaticamente se guardara en formato c++ y por eso pasa esto que hay que agregar la libreria conio.h
saludos y felicidades por este blog
2:51:46 pm
esta mal el codigo es asi:
#include <stdio.h>
#include <conio.h>
int main()
{
printf(“Hola Mundo”);
getch();
}
3:19:16 pm
hola.. tngo un problema, no me puedo hacer funcionar el programa.. descargue le Dev-C++ y lo hago gal cual lo dicen pero me aparece una ventana q se va enseguida y no alcanso a leer lo q dice… use el getch pero no.. tiene algo q ver si tngo windows 7??
gracias y muy bueno el tutorial
5:43:43 pm
@PATO: Recuerda hacer un include a conio.h al inicio para poder utilizar getch( );
Saludos!
9:11:06 pm
sabes lo q pasa…. q yo descargue el dev-c++ y parece q no hay q poneer las librerias… por eso es q no me andaba!!
gracias igual por contestar
8:16:14 pm
Hey muchisimas gracias, no sabes cuanto me sera de ayuda esto, que bueno que hay personas como ustedes, espero que saquen otras cosas como aprender calculo que para mi es otro dolor de cabeza,pero gracias loco con esto por ahora es suficiente..
5:43:30 pm
voy bien hasta aqui pero yo decidi poner linux en mi pc existe un entorno para programar en c++ o debo reinstalar el windows