2. Un programa en C: es un
conjunto de funciones,
definiciones de tipos de datos y
declaraciones de variables
contenidos en un conjunto de
ficheros. Un programa en C
siempre comienza a ejecutar
por la función con
nombre main.
3. Cualquier función puede
llamar a cualquier función, y
las variables declaradas
fuera de las funciones tienen
ámbito global o local al
fichero que las contiene (si
se declaran con el
prefijo static)
4. El compilador es el
programa encargado de
traducir un conjunto de
funciones, definiciones y
declaraciones en múltiples
ficheros a un fichero
ejecutable.
5. El compilador de C tiene un
comportamiento sorprendentemente
sencillo y realiza mucho menos trabajo del
que se está acostumbrado con otros
compiladores como el de Java
6. Para crear un ejecutable, el compilador procesa los ficheros de código uno a uno de forma
independiente, de forma que las definiciones de variables y funciones de un fichero no las
recuerda cuando procesa el fichero siguiente.
El programa ejecutable es autónomo, es decir, ya no se necesita el código fuente ni del
compilador para que pueda funcionar. Y es el resultado del enlace de todos los código
objetos y librerías.
7.
8. 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 esta
encerrado entre llaves {}.
9. 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.
10. 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.
11. 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 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.
Try Catch en C#
12. 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: /* */.
13. 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 terminan. Es
perfectamente lícito escribir cualquier sentencia
abarcando los renglones que la misma necesite
14. 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:
15. 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.
16.
17.
18. 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 los 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).
19. Los comandos necesarios para compilar, enlazar los
diferentes módulos y ejecutar un programa dependen del
sistema operativo, y debemos dirigirnos a los manuales
correspondientes para conocer la sintaxis exacta. Como
forma más común podemos dar la siguiente:
compilar: cc prog
cc modulo1, modulo2
enlazar: link prog, modulo1, modulo2
ejecutar: prog
20. Números enteros definidos con la palabra clave int
Letras o caracteres definidos con la palabra clave char
Números reales o en coma flotante definidos con las palabras
claves float o double