C (lenguaje de programación)
|
Sumario
Instrodución
Lenguaje C o también conocido como “Lenguaje de programación de sistemas” desarrollado en el año 1972 por Dennis Ritchie para UNIX un sistema operativo multiplataforma.
El lenguaje C es del tipo lenguaje estructurado como son PASCAL, FORTRAN, Basic. Sus instrucciones son muy parecidas a otros lenguajes incluyendo sentencias como if, else, for, do y while... .
Aunque C es un lenguaje de alto nivel (puesto que es estructurado y pose sentencias y funciones que simplifican su funcionamiento) tenemos la posibilidad de programar a bajo nivel ( como en el ASSEMBLER tocando los registros memoria etc. ). Para simplificar el funcionamiento de el lenguaje C tiene incluidas librerías de funciones que pueden ser incluidas haciendo referencia la librería que las incluye es decir que si queremos usar una función para borrar la pantalla tendremos que incluir en nuestro programa la librería que tiene la función para borrar la pantalla.
Ventaja del lenguaje
La programación en C tiene una gran facilidad para escribir código compacto y sencillo a su misma vez.
En el lenguaje C no tenemos procedimientos como en otros lenguajes solamente tenemos funciones los procedimientos los simula y esta terminante mente prohibido escribir funciones , procedimientos y los comandos en mayúscula todo se escribe en minúsculas (a no ser las constantes J )
Los archivos en la C se escriben en texto puro de ASCII del Dos si se escribe en WORD por ejemplo el mismo incluye muchos códigos no entendidos por el compilador y generara errores ;una vez escrito se debe pasar a compilar el archivo; los archivos tienen 2 Extensiones archivo.C que es el archivo a compilar el que contiene todas los procedimientos funciones y código de nuestro programa y archivo.h que es las librerías que contienen las funciones de nuestro programa. (NOTA : El compilador genera Archivos con extensión .EXE)
Cada instrucción que pasemos a poner en C va segida de un punto y coma para decirle al compilador que hasta ahí llega la instrucción simula un Enter del teclado. Ejemplo: clrscr(); /* borra la pantalla */
Estructura de Programación en “C”
Encabezados <ficheros.h> en el se almacenan las funciones que trae el lenguaje propio o las funciones nuestras se les llaman Librerías. Las funciones de C dan mucha potencia al programador en podemos realizar los programas con mucha potencia y facilidad de código.
Constantes simbólicas en el se definen las constantes de nuestro programa es lo único que se escribe en mayúsculas. ej.: #define ENERO 31
Nota: (las constantes son variables que conservan el mismo valor todo el programa una vez que incluimos una constante en nuestro programa el compilador va a sustituir el texto contenido en la constante por el texto del mismo.)
Cabecera de funciones es la llamadas a las funciones que se encuentran el mismo programa y al final del.
Función principal MAIN() en el se desarrollara todo el código del programa las llamadas a funciones procedimientos etc. (es una función que sé autoejecuta cuando se compila el programa).
Comentarios , variables y constantes.
Nota:
Para incluir en nuestro programa comentarios muy necesario para que otros programadores entiendan lo que quisimos hacer y nosotros mismos el con el tiempo.
/* Esto es un comentario */
En C++ los comentarios se pueden hacer en una linea con //
(//en c++ esto es un comentario)
Tipo de Variables en C
Definición: Para la definición de variables de debe poner primero el tipo de variable a definir y luego el nombre de la variable ( si queremos inicializarla podemos a continuación poniendo = valor) y si queremos definir mas de una variable del mismo tipo podemos poniendo una coma a continuación. Ejemplo: int contador; /* define una variable con el nombre contador de tipo entero */ int cont = 0 ; /* inicializando cont con 0 */ Int cont , cont2, contn = 0; /* definición de mas de una variable */ Float científica = 10.1 Int cont = cont +1; Int cont = cont2; TRABAJANDO CON ESTRUCTURAS También se pueden definir tipo de variables con varias variables dentro llamada estructuras de variables (muy precido a los registros Grande DBASE ....) dentro de un registro nosotros podemos agrupar un conjunto de variables bajo un mismo nombre por ejemplo tengo una ficha de cliente donde tiene nombre , dirección ,teléfono ; en la misma ficha yo podría preguntar por cliente.nombre o cliente.telefono etc.
Tipo de definición
Struct nombre { Tipo variable1 Tipo variable2 Tipo variablex }; struct nombre nombre_dela_variable;
Bueno para que sirve esto .... si tenemos que definir un nuevo tipo de variable como por ejemplo una variable que contenga nombre, teléfono, y edad en la misma podría definirlo así.
struct cliente { char nombre[]; char telefono[10]; int edad; } ; struct cliente clientes[20];
.. ... dentro de nuestro programa...
if cliente[1].edad == 10 // si el cliente numero 1 tiene 10 años entonces mostrar printf(“Muy joven”);
Otra de las ventajas puede ser para guardar el contenido de los registros de clientes dentro de un archivo, nosotros solamente tendríamos que volcar el registro a el archivo y listo o para levantarlo tendríamos que leer del archivo de registro.
Constantes :
#define nombre texto_deremplazo Las constantes son variables que se mantienen todo el programa con un mismo valor. Cada vez que nosotros llamamos a una constante lo que hacemos es remplazar la constante por su valor.
No se debe poner ; después de la definición. Ej.:
#define MAXLINEAS 24 #define MINOMBRE “Federico” #define ARCHIVO “C:\autoexec.bat”
y cuando en mi programa yo haga por ejemplo printf(“Autor : %s”,MINOMBRE); se sustituirá el contenido de la constante por el contenido de la misma printf(“Autor : %s”,”Federico”); se pueden definir constantes de tipo macro que se tocara en el próximo capitulo.
Un ejemplo que para los amantes de turbo pascal les puede gustar
// Ejemplo realizado para clase de definicion de varialbes.
- include <stdio.h> // inclusión de librerías.
- include <stdlib.h>
- include <conio.h>
// definición de constantes.
- define BEGIN {
- define END }
- define WRITELN( texto ) printf("%s\n",texto)
- define READLN(variable) gets(variable)
- define PAUSA getch()
void main() BEGIN char var[255]; clrscr(); WRITELN("hola"); READLN( var ); WRITELN( var); PAUSA; END
Cuando yo definí como constantes BEGIN el texto que sustituye a la palabra va a ser “{“ y lo mismo para END “}” Pero cuando definí WRITELN y READLN lo puse entre parentesis con un parametro que se lo paso a printf() como parametro. Esto es una macro simple se pueden hacer macros mas complejas como por ejemplo
Inclusion de librerias de funciones de C */
- include <stdio.h>
- include <stdlib.h>
- include <conio.h>
//definicion de una macro simple.
- define PAUSA printf("PAUSA"); getch();
esta macro tiene 2 comandos printf() mostrar en pantalla getch() espera que se precione una tecla,
//definicion de una macro compuesta.
- define max(a,b) ((a > b) ? (a) : (b));
Esta macro compara el contenido de a y b si a es > b entonces retorna a si no retorna b en seudo codigo es A mayor a B entonces retorna A si no B
Funcion principal
void main() {
int res= 0, var1, var2; clrscr(); // borrar la pantalla printf("Ingrese numero 1:"); // mostrar texto scanf("%d",var1); // capturar var1 fflush(stdin); // limpio el buffer del teclado. printf("\nIngrese numero 2;"); // mostrar texto scanf("%d",var2); // capturar var2 fflush(stdin); // limpio el buffer del teclado. res = max(var1, var2); // realizar ecuacion llamando a la macro printf("\nEl mayor es %d",res); // imprimir resultado PAUSA; // llamar a la macro de pausa.
Bibliografía
- Rena, F. Manual de Programación en C para principiantes y avanzados,