Variables y vectores
Las variables son ttulos asignados a espacios en memoria para almacenar datos
especficos. Son contenedores de datos y por ello se diferencian segn el tipo de
dato que son capaces de almacenar. En la mayora de lenguajes de programacin
se requiere especificar un tipo de variable concreto para guardar un dato
especfico. Por ejemplo, en Java, si deseamos guardar una cadena de texto
debemos especificar que la variable es del tipo String. Por otra parte, en lenguajes
como PHP este tipo de especificacin de variables no es necesario. Adems,
Condicionales
Las sentencias condicionales son estructuras de cdigo que indican que, para que
cierta parte del programa se ejecute, deben cumplirse ciertas premisas; por
ejemplo: que dos valores sean iguales, que un valor exista, que un valor sea
mayor que otro... Estos condicionantes por lo general solo se ejecutan una vez a
lo largo del programa. Los condicionantes ms conocidos y empleados en
programacin son:
If: Indica una condicin para que se ejecute una parte del programa.
Else if: Siempre va precedido de un "If" e indica una condicin para que se
ejecute una parte del programa siempre que no cumpla la condicin del if
previo y si se cumpla con la que el "else if" especifique.
Else: Siempre precedido de "If" y en ocasiones de "Else If". Indica que debe
ejecutarse cuando no se cumplan las condiciones previas.
Bucles
Los bucles son parientes cercanos de los condicionantes, pero ejecutan
constantemente un cdigo mientras se cumpla una determinada condicin. Los
ms frecuentes son:
Hay que decir que a pesar de que existan distintos tipos de bucles, ambos son
capaces de realizar exactamente las mismas funciones. El empleo de uno u otro
depende, por lo general, del gusto del programador.
Tipos de programas
Un programa, por lo general, estar compuesto por una secuencia de
acciones, algunas de las cuales sern alternativas o repetitivas. En
determinados programas sencillos, no se da esta mezcla de acciones, en
cuyo caso se pueden clasificar como sigue:
Esta divisin permite que el mismo Back End se utilice para generar el cdigo
mquina de varios lenguajes de programacin distintos y que el mismo Front
End que sirve para analizar el cdigo fuente de un lenguaje de
programacin concreto sirva para generar cdigo mquina en varias plataformas
distintas. Suele incluir la generacin y optimizacin del cdigo dependiente de la
mquina.
El cdigo que genera el Back End normalmente no se puede ejecutar
directamente, sino que necesita ser enlazado por un programa enlazador (linker).
Preproceso
Lo primero que el compilador de C hace es pasar nuestro programa por el
preprocesador. El preprocesador se encarga de interpretar cada una de las
directivas que aparecen en el programa y de expandir las macros. Respecto a las
directivas, son todos a aquellas lneas que comienzan con un smbolo #. Hay un
conjunto de directivas que son parte del estndar ANSI se comentan en el
apndice.
Compilacin del programa.
Una vez que el programador acaba de escribir el programa en su terminal y lo
almacena en un archivo debe traducirlo a cdigo ejecutable por la mquina. Este
proceso se llama en su conjunto compilacin del cdigo fuente en C.
#include<stdio.h>
Hace que se inserte el fichero stdio.h en el lugar donde aparece esa lnea. Como
el lector puede ver si examina el fichero stdio.h, lo que hay en el son declaraciones
de prototipos de funciones y de tipos de datos, perfectamente validos en C.
El compilador se encarga de la etapa de preproceso, justo antes de iniciar la
compilacin. Por lo tanto, esta etapa pasa normalmente desapercibida, aunque
puede indicrsele al compilador que solo efectu el preproceso, para ver cmo
queda el programa despus de l. La forma de solicitrselo depende de cada
compilador en concreto. Una vez finalizado el preproceso, nuestro programa que
da listo para que pueda comenzarse su traduccin a cdigo ejecutable.
Enlace
La siguiente etapa de compilacin es el enlace con las funciones presentes en las
libreras de funciones. Si nuestro programa utiliza solo funciones ANSI, no suele
ser necesario indicarle al compilador en que libreras estn esas funciones. Sin
embargo hay excepciones. Por ejemplo si utilizamos funciones matemticas de la
librera estndar en nuestro programa (es decir en el programa aparece #include
<math.h>, opcin lm. Sin embargo, si utilizamos funciones definidas en una
librera propia o bien en una librera no estndar, debemos indicrselo al
compilador mediante algn parmetro.
Errores en tiempo de compilacin
El compilador es capaz de detectar algunos errores que pueden cometerse en el
desarrollo de un programa escrito en C. Evidentemente, no puede detectar todos
ya que un programa puede funcionar perfectamente pero no hacer lo que se
espera de l. Los errores detectados por el compilador son de dos clases: errores
propiamente dichos (errors), y advertencias (warnings)
Los errores se deben a cuestiones sintcticas relacionadas con el lenguaje. El
compilador enumera los errores que se encontraron, y luego detiene la
compilacin. El mensaje de error que aparece siempre indica al menos tres
cosas:
*El nombre del fichero en donde se ha encontrado el error.
*la lnea del fichero en donde se ha detectado el error.
*un mensaje describiendo brevemente el error.