Вы находитесь на странице: 1из 6

PREGRADO SI MRZ19 - JUL19

INGENIERÍA MECATRÓNICA

FUNDAMENTOS DE PROGRAMACIÓN

NRC - 4091

INTRODUCCIÓN AL LENGUAJE C

Nombres:

Camacho Jibaja Carlos Fernando


Guachamín Taboada Pablo Andrés
Guerrero Merino Joe Alexander

Docente: Ing. Fausto Meneses


INTRODUCCIÓIN AL LENGUAJE C

8-15

1. ORIGEN
El lenguaje C fue creado por Dennis Ritchie de los Laboratorios Bell, en 1972, cuando trabajaba
junto, con Ken Thompson en el diseño del sistema operativo UNIX. El lenguaje C no surgió como
idea espontánea dc Ritchcie fuc cl resultado de un proceso que comenzó con los lenguajes: BCPL
que fue desarrollado por Martín Ritchards y B inventado por Ken Thompson. Fue implementado
por primera vez por Dennis Ritchie en un computador DEC PDP-11 usando el UNIX como sistema
operativo. El lenguaje C es el lenguaje predominante en el mundo de las minicomputadoras de
sistemas UNIX y computadoras personales, siendo usado por compañías de software, estudiantes
de informática, etc. Inicialmente el lenguaje C fue usado para la “programación de sistemas", quc
es una parte de una amplia clase de programas que forman parte del sistema operativo de la
computadora o de sus utilidades de soporte. A medida que cl lenguaje C creció en popularidad, se
comenzó a usarlo para programar cualquier tipo de tareas, debido a sus ventajas.

2. VENTAJAS
El C es un lenguaje moderno que incorpora características como la planificación escalonada,
programación estructurada y diseño modular; el resultado es un programa más fiable y
comprensible.
1. Eficiencia. El C aprovecha óptimamente las características del hardware de las
microcomputadoras.
2. Portabilidad. El software escrito en C para un tipo de computadora puede adaptarse a otro tipo.
Es decir, los programas de C escritos en un sistema pueden ejecutarse en otros sin ninguna
modificación, con modificaciones mínimas, por ejemplo en los sistemas Apple, IBM, etc.
Por lo que los programas de C son fáciles de modificar y de adaptar a nuevos modelos de
computadoras.
3. Potencia. En C están escritos casi todos los compiladores e intérpretes como Pascal, Fortran,
Logo, APL, LISP. Basic, etc.
4. Flexibilidad. El C posee control sobre aspectos del computador asociados con el lenguaje
ensamblador y las ventajas del lenguaje de alto nivel.

3. C COMO LENGUAJE DE NIVEL MEDIO


El lenguaje C se considera un lenguaje de "nivel medio", porque combina cementos de lenguajes de
"alto nivel" con el funcionalismo del lenguaje 'ensamblador" Esto no significa que sea menos
potente, más difícil de usar o menos evolucionado que los lenguajes de "alto nivel como el Pascal,
Modula 2, etc. Ni implica que C sea similar al lenguaje ensamblador que es de bajo nivel. C como
lenguaje de nivel medio permite la manipulación de bits, bytes, palabras de memoria y punteros,
que son los elementos básicos con que funciona la computadora.
Otro aspecto importante del lenguaje C es que solo tiene 32 "palabras clave", que constituyen las
órdenes que lo conforman. Estas palabras junto con la sintaxis, forma el lenguaje C. A continuación
se lista las 32 "palabras clave", de ellas, 27 fueron definidas en la versión original del C estándar de
Ritchie y Kernigham, y las cinco siguientes fueron añadidas por el ANSI: const, enum, signed, void
y volatile.

En C las mayúsculas y las minúsculas son diferentes, por eso todas las palabras clave de C están en
minúscula y una "palabra clave" no puede ser usada como nombre de variable o de función.

4. C COMOLENGUAJE DE ALTO NIVEL


El C como un lenguaje de alto nivel tiene estructuras en bloques, funciones independientes, y un
compacto conjunto de palabras clave. Entonces, un programa en C puede casi alcanzar la
eficiencia del código ensamblador, como su velocidad junto con la estructura de los lenguajes de
alto nivel como el ALGOL o Modula_2 la extensibilidad del lenguaje FORTH y pocas de las
restricciones del Pascal. El lenguaje C normalmente es compilado, y en la actualidad los
compiladores de C tienen un intérprete para ayudas en la depuración.

5. C COMO LENGUAJE ESTRUCTURADO


Técnicamente, un lenguaje estructurado por bloques permite declarar procedimientos y funciones
dentro de otros procedimientos y funciones, de esta forma, se extienden los conceptos de globalidad
y localidad mediante el uso de "reglas de alcance", que gobiernan la "visibilidad" de las variables o
de los procedimientos. Además, la característica distintiva de un lenguaje estructurado es la
capacidad de seleccionar y ocultar del resto del programa toda la información y las instrucciones
necesarias para llevar a cabo una determinada tarea. Esto se lo hace mediante el
uso de subrutinas que emplean variables locales. Entonces, dado que C no permite la creación de
funciones dentro de funciones, no puede ser formalmente denominado lenguaje estructurado en
bloques. Pero se lo considera como un lenguaje estructurado ya que con él se programa más
fácilmente de forma estructurada. Otra forma de estructuración en C es mediante el uso de "bloques
de código". "Un bloque de código" es un grupo de sentencias de un programa conectadas de forma
lógica que es tratado como una unidad o proceso. En C se crean bloques de código colocando una
serie de sentencias entre llaves. Por lo tanto, cada sentencia puede ser una sentencia simple o un
bloque de sentencias.
6. ESTRUCTURA DE UN PROGRAMA EN C
Todos los programas en C consisten en una o más funciones, la única función que debe estar siempre
presente es la denominada main() (técnicamente main() forma parte del lenguaje C), siendo la
primera función que se llama cuando comienza la ejecución del programa, y ella puede a su vez
llamar a otras funciones. Sin embargo, hay funciones de tipo vacío lo que significa que ellas no
retoman valores. También el programador es libre de ignorar algunos valores que una función
retome. Para que un programa en C esté bien escrito, la función main() contiene un
esbozo de lo que el programa hace, es decir, está compuesto por las llamadas a otras funciones, las
cuales realizan una tarea específica del programa
La estructura de un programa C es la siguiente:
<Comandos de preprocesador>
<Definición de tipos>
<Prototipos de funciones>
<Variables globales>
<Funciones>
NOTA: <> puede o no ir, excepto la función principal main().
Cada función tiene la siguiente estructura:
<Tipo> Nombre de la función (<Declaraciones de parámetros>)
{
<Declaraciones locales>
<Sentencias>
}
Una función consta de un encabezamiento y un cuerpo:
Encabezamiento. Contiene cualquier tipo de dato que tomará la función, el nombre de la función,
y entre paréntesis la declaración de los parámetros, si existieran.
Cuerpo. Está delimitado por las llaves, {}, que indican el bloque de código, y consiste en un grupo
de sentencias, cada una de las cuales termina en un punto y coma. Una función se identifica cuando
un nombre va seguido por paréntesis, dentro de los cuales puede o no haber parámetros.

7. BIBLIOTECA
La biblioteca es un conjunto de archivos pequeños, que contienen funciones para llevar a cabo las
tareas necesarias más comunes, aunque dependiendo del compilador contienen más o menos
funciones, como en la versión de C original de UNIX donde existen algunas funciones que no están
definidas en el ANSI, ya que eran redundantes. Entonces, los programas en lenguaje C tienen
llamadas a varias funciones contenidas en la biblioteca estándar. Si se escribe una función que se va
a usar repetidas veces, también puede ser ubicada en la biblioteca estándar, considerando que
algunos compiladores permiten colocar esas funciones en esa biblioteca y otros obligan a crear una
biblioteca adicional. Cada programador de C puede crear y mantener su propia biblioteca de
funciones de acuerdo a su necesidad y que pueda ser usada en muchos programas.

8. ENLAZADOR
El enlazador es un programa que enlaza funciones compiladas por separado para producir un solo
programa, también combina las funciones de la biblioteca estándar de C con el código que se haya
escrito. La salida del enlazador es un programa ejecutable. Algunos compiladores de C tiene su
propio enlazador y otros usan el enlazador estándar proporcionado por el sistema operativo.

9. COMPILACIÓN SEPARADA
C permite separar un programa en muchos archivos, los cuales son compilados por separado. Una
vez que han sido compilados todos los archivos, se enlazan entre sí, junto con las rutinas de la
biblioteca, para formar el código objeto completo. La ventaja de la compilación separada es que un
cambio en el código de uno de los archivos no requiere la compilación del programa entero, y así el
tiempo de compilación es más corto.

10. COMPILACIÓN DE UN PROGRAMA EN C


La compilación de un programa en C consiste de los siguientes tres pasos:
1. Creación del programa. Se utiliza un editor que generalmente es incorporado por el compilador,
y el archivo editado debe ser de texto estándar para que los
compiladores lo acepten. El nombre de un archivo fuente escrito por el editor del lenguaje C debe
tener: como primera parte un nombre respecto a lo que hace el programa, y como segunda parte la
extensión .C para identificar que es un archivo de programa en C.
2. Compilación del programa. Comprobará si el programa tiene algún error, si existe será indicado,
caso contrario, el compilador traducirá el programa fuente a lenguaje de máquina, almacenándolo
en un archivo, que es ejecutable. Esto dependerá del compilador particular de C que se use.
3. Enlazado del programa. Si se tiene archivos diferentes se enlazan con todas las funciones de la
biblioteca que se necesiten, pero si existe un solo archivo no es necesario enlazar. Esto podrá variar
entre compiladores y entornos. A continuación, ya puede ser ejecutado el programa desde el mismo
compilador o desde el sistema operativo, tecleando el nombre del nuevo archivo.
11. MAPA DE MEMORIA DE C
Un programa compilado en C crea y usa cuatro regiones de memoria lógicas diferentes que sirven
para funciones específicas
1. La primera región es la memoria que contiene realmente el "código de programa"
2. La siguiente región es la memoria donde se guarda las "variables globales", cuya creación se
realiza en el momento de la compilación.
3. La tercera región es el "montón" de la memoria libre que puede usar el programa mediante las
funciones de asignación dinámica de memoria, en el momento de la ejecución del programa. Se
utiliza para estructuras dinámicas como listas, árboles, etc.
4. La cuarta región es la "pila" (stack) que se usa en el momento de la ejecución del programa, para
mantener las direcciones de vuelta de las llamadas a funciones, almacenar las variables locales, y
salvar el estado de la CPU.

12. PROGRAMAS LEGIBLES


Con un programa legible se consigue que dicho programa sea fácil de comprender, corregir o
modificar. Para lo cual se debe cumplir lo siguiente:
1) Escribir el programa en forma estructurada.
2) Escoger nombres de los identificadores de funciones, variables y constantes, apropiados de
acuerdo a su función.
3) Usar una sentencia por línea.
4) Poner comentarios para resaltar una función, una declaración, una instrucción o un bloque de
código, etc.

Вам также может понравиться