C (lenguaje de programación)

Revisión del 14:59 16 jun 2011 de Junco colon3jc (discusión | contribuciones) (Comentarios , variables y constantes.)
Lenguaje de Programación C
Información sobre la plantilla
Programación C.jpeg
Lenguaje de programación del alto nivel, para el sistema operativo UNIX
CreadorDennis Ritchie
DesarrolladorDennis Ritchie
Diseñado porDennis Ritchie
Lanzamiento inicial1972
GéneroLenguaje de Programación para sistemas
Sistemas Operativos compatiblesLinux, Windows, UNIX,

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.

Archivo:Dennis Ritchie.jpeg
creador del lenguaje de programación C

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”

Ejemplo

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

Table de tipos de variables

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.

  1. include <stdio.h> // inclusión de librerías.
  2. include <stdlib.h>
  3. include <conio.h>

// definición de constantes.

  1. define BEGIN {
  2. define END }
  3. define WRITELN( texto ) printf("%s\n",texto)
  4. define READLN(variable) gets(variable)
  5. 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 */
  1. include <stdio.h>
  2. include <stdlib.h>
  3. include <conio.h>

//definicion de una macro simple.

  1. 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.

  1. 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,