1. Lenguaje C
Republica bolivariana de Venezuela
Ministerio del poder popular para la educación
Universidad “Fermin Toro”
Autor : Jose Querales
Ci. 21.299.959
Tutor: Yakirana Berro
2. Lenguaje C
C es un lenguaje de programación de
propósito general que ofrece
economía sintáctica, control de flujo y
estructura sencillas y un buen
conjunto de operadores. No es un
lenguaje de muy alto nivel y más bien
un lenguaje pequeño, sencillo y no
está especializado en ningún tipo de
aplicación. Esto lo hace un lenguaje
potente, con un campo de aplicación
ilimitado y sobre todo, se aprende
rápidamente. En poco tiempo, un
programador puede utilizar la
totalidad del lenguaje.
La base del C proviene del BCPL,
escrito por Martin Richards, y del B
escrito por Ken Thompson en 1970
para el primer sistema UNIX en un
DEC PDP-7. Estos son lenguajes sin
tipos, al contrario que el C que
proporciona varios tipos datos . Los
tipos que ofrece son caracteres,
números enteros y en coma flotante,
de varios tamaños. Además se
pueden crear tipos derivados
mediante la utilización de punteros,
vectores, registros y uniones. El
primer compilador de C fue escrito
por Dennis Ritchie para un DEC PDP-
11 y escribió el propio sistema
operativo en C.
3. Caracteristicas del lenguaje C
En un nivel intermedio se sitúa el lenguaje C, permitiendo beneficiarse de las
ventajas de ambos tipos de lenguajes, y reduciendo sus inconvenientes.
Es un lenguaje de propósito general. Se ha utilizado para el desarrollo de muy
diversas aplicaciones: sistemas operativos, hojas de cálculo, gestores de bases
de datos...
Es un lenguaje portable, es decir, es independiente del hardware. Los
programas escritos en C son fácilmente trasportables a otros sistemas.
4. Ventajas y Desventajas
Ventajas
Es un lenguaje potente y eficiente, permitiendo
obtener programas rápidos y compactos.
Proporciona un completo control de cuanto
sucede en el interior del ordenador.
Permite una amplia libertad de organización del
trabajo.
Desventajas: Es más complicado de aprender
que otros lenguajes de programación como
por ejemplo el Pascal.
Requiere una cierta experiencia para poder
sacarle el máximo rendimiento.
Sin disciplina es difícil mantener el control del
programa.
5. Utilidad del lenguaje C
Un núcleo del lenguaje simple, con
funcionalidades añadidas importantes,
como funciones matemáticas y de manejo
de archivos, proporcionadas por
bibliotecas.
Es un lenguaje muy flexible que permite
programar con múltiples estilos. Uno de los
más empleados es el estructurado "no
llevado al extremo" (permitiendo ciertas
licencias de ruptura).
Un sistema de tipos que impide
operaciones sin sentido.
Usa un lenguaje de preprocesado, el
preprocesador de C, para tareas como
definir macros e incluir múltiples archivos
de código fuente.
Acceso a memoria de bajo nivel mediante
el uso de punteros.
Interrupciones al procesador con uniones.
Un conjunto reducido de palabras clave.
Por defecto, el paso de parámetros a una
función se realiza por valor. El paso por
referencia se consigue pasando
explícitamente a las funciones las
direcciones de memoria de dichos
parámetros.
Punteros a funciones y variables estáticas,
que permiten una forma rudimentaria de
encapsulado y polimorfismo.
Tipos de datos agregados (struct) que
permiten que datos relacionados (como un
empleado, que tiene un id, un nombre y un
salario) se combinen y se manipulen como
un todo (en una única variable
"empleado").
6. Ejmplo del lenguaje C en la vida real
Un ejemplo simple de un programa en gcc, el que es equivalente a este otro programa en
gcc (modificado). La diferencia radica en que en el primero las funciones son definidas
después de que han sido utilizadas y en el segundo las funciones son definidas primero y
luego utilizadas, además de que en ésta no se incluyen las librería stdio.h y stdlib.h . En
ambos casos la ejecución de los programas comienza dentro de la función main donde se
declaran tres variables locales i1, i2 e i3. Luego se ejecutan las siguientes instrucciones:
Se asigna a la variable i1 el valor de la constante MAX que fue definida anteriormente con
un valor del tipo entero 2.
Se asigna a la variable i2 el valor del tipo entero que retorna la llamada a la función
denominada: cuadrado(i2). El parámetro de entrada de esta función es i1, cuyo valor es 2.
Como ésta función retorna el valor de i1*i1, el valor de i2 es 4.
Se asigna a la variable i3 el valor de la función cubo(i2), en este caso 64.
Para indicar el estado en el que el programa ha terminado se utiliza la función
return(EXIT_SUCCESS)