2. Como podemos imaginar, este programa no hace nada, pero contiene la
parte más importante de cualquier programa C y además, es el más
pequeño que se puede escribir y que se compila correctamente. En él se
define la función main, que es la que ejecuta el sistema operativo al llamar
a un programa C. El nombre de una función C siempre va seguida de
paréntesis, tanto si tiene argumentos como si no. La definición de la función
está formada por un bloque de sentencias, que está encerrado entre llaves
{}.
Un programa algo más complicado, pero que hace algo, es el siguiente:
#include <stdio.h>
main()
{
/* Este es mi primer programa en C*/
printf("Bienvenido a la programación en lenguaje Cn");
return 0;
}
Con él visualizamos el mensaje Bienvenido a la programación en lenguaje C en el
terminal.
La primera línea indica que se tengan en cuenta las funciones y tipos
definidos en la biblioteca stdio (standard input/output). Estas definiciones se
encuentran en el fichero de encabezado (header) stdio.h.
En la función main se incluye una primera sentencia que llama a la función
printf. Ésta toma como argumento (encerrado entre paréntesis) una cadena
de caracteres limitados por dobles comillas " " y la imprime en la salida
habitual, que generalmente es el terminal en el que trabajamos. El símbolo
n indica un cambio de línea.
La segunda sentencia, return 0, termina el programa y devuelve un valor
(cero) al sistema operativo (por lo general es cero si la ejecución fue
correcta y se usan valores distintos de cero para indicar diversos errores que
pudieron ocurrir). Si bien no es obligatorio terminar el programa con un return,
es conveniente indicarle a quien lo haya invocado, sea el Sistema Operativo
o algún otro programa, si la finalización ha tenido éxito o no. De cualquier
3. manera, en este caso, si sacamos esa sentencia el programa, éste
funcionará exactamente igual, pero al ser compilado, el compilador nos
advertirá de la falta de retorno.
La inclusión de comentarios en un programa es una saludable práctica,
como lo reconocerá cualquiera que haya tratado de leer un listado hecho
por otro programador o por sí mismo, varios meses atrás. Para el compilador,
los comentarios son inexistentes, por lo que no generan líneas de código,
permitiendo abundar en ellos tanto como se desee. En el lenguaje C se toma
como comentario todo carácter entre los símbolos: /* */.
Cada sentencia de programa queda finalizada por el terminador ";", que
indica al compilador el fin de la misma. Esto es necesario ya que sentencias
complejas pueden llegar a tener más de un renglón, y habrá que avisar al
compilador donde termina. Es perfectamente lícito escribir cualquier
sentencia abarcando los renglones que la misma necesite; por ejemplo
podría ser:
printf("Bienvenido a la programación en lenguaje Cn");
Un programa en C es simplemente un fichero de caracteres que contiene
un conjunto de instrucciones que un programa especial, el compilador o
traductor, se encarga de transformar en un código que la computadora
puede ejecutar (código objeto). En general, un programa suele estar
compuesto de tres partes:
El encabezamiento, que especifica las declaraciones globales de los datos
y sus tipos, que vamos a manejar a lo largo del programa;
La función principal, que se suele llamar main, y define la estructura del
programa.
Las funciones o subrutinas auxiliares, que realizan las operaciones necesarias;
son llamadas por la rutina principal, la función main. Se suelen colocar
después de esta función.
Encabezamiento
main( )
{
variables locales
sentencias
}
f1( )
4. {
variables locales
sentencias
}
...
...
...
fn( )
{
variables locales
sentencias
}
Cuando la envergadura del programa es grande se suele fragmentar el
programa en varias partes, incluyendo cada parte en un fichero separado.
El lenguaje C define el método que debemos seguir para separar las
diferentes partes del programa. Normalmente colocaremos en cada fichero
todas las subrutinas y funciones que se encarguen de una tarea del
programa. Por tanto, un programa C puede estar formado por diferentes
módulos o fuentes. Es conveniente mantener las fuentes de un tamaño no
muy grande, para que la compilación sea rápida. También, al dividirse un
programa en partes, se puede facilitar la legibilidad del programa y su
estructuración. Los diferentes fuentes son compilados de forma separada -
únicamente los fuentes que han sido modificados desde la última
compilación-, y después enlazados o combinados entre ellos y con las
bibliotecas necesarias para formar el programa en su versión ejecutable,
mediante un programa denominado enlazador (linker).
http://platea.pntic.mec.es/vgonzale/cyr_0204/cyr_01/control/lengua_C/programa.htm