El Lenguaje C Fue Diseñado Por Dennis Ritchie 2

4
El lenguaje C fue diseñado por Dennis Ritchie, de los Laboratorios Bell, y se instaló en un PDP-11 en 1972. Se diseñó para ser el lenguaje de los sistemas operativos UNIX. Se creó para superar las limitaciones del lenguaje B, utilizado por Ken Thompson para producir la versión original de UNIX en 1970. El lenguaje B se basó en BCPL, lenguaje sin tipos desarrollado por Martin Richards, en 1967, para programación de sistemas. ES UN LENGUAJE DE NIVEL MEDIO Combina elementos de lenguajes de alto nivel (tipos, bloques, ...) con la funcionalidad de los ensambladores. Permite manejar los elementos típicos de la programación de sistemas: bits bytes direcciones NO ESTA FUERTEMENTE ORIENTADO A TIPOS Tiene cinco tipos de datos básicos, tipos estructurados y admite definición de tipos por el usuario. Pero permite casi todas las conversiones (p.ej. se pueden mezclar los tipos "int" y "char" en casi todas las expresiones). No hace comprobaciones de error en tiempo de ejecución (desbordamiento de arrays, ...) "Deja hacer" al programador. ES UN LENGUAJE SEMI-ESTRUCTURADO No es completamente estructurado en bloques porque no permite declarar procedimientos o funciones dentro de otros procedimientos o funciones. Pero tiene algunas características propias de los lenguajes estructurados: • Dos formas de estructuración del código: Con funciones independientes Con bloques • Dispone de las sentencias típicas para construir estructuras de control: while do-while for ES UN LENGUAJE PARA PROGRAMADORES Algunos otros lenguajes están hechos para no-programadores (BASIC, COBOL, ...) El lenguaje C está influenciado, diseñado y probado por programadores profesionales. Proporciona: • Una visión próxima a la máquina • Pocas restricciones • Pocas pegas • Conjunto reducido de palabras clave • Estructuración en bloques • Funciones independientes • Recursos para el encapsulamiento de datos Permite alcanzar casi la eficiencia del código ensamblador, junto con la estructuración propia de lenguajes como ALGOL, MODULA-2. Se diseñó para la programación de sistemas Los programas son muy transportables Actualmente se usa para otros propósitos Formato de programa Los programas se construyen con: Comentarios. Ordenes para el preprocesador de macros. Definiciones de funciones. Expresiones formadas con constantes, variables, funciones y operadores. Sentencias. EL FORMATO DE ESCRITURA ES MUY FLEXIBLE: Las constantes, identificadores y palabras clave deben separarse; pero ello puede hacerse con : - espacios en blanco - marcas de tabulador - marcas de salto de linea – comentarios LOS COMENTARIOS Son lineas que ignora el compilador pero sirven para documentar los programas: Empiezan con: /* terminan con: */ pueden abarcar varias lineas no se pueden anidar LAS SENTENCIAS PARA EL PREPROCESADOR Son órdenes que el preprocesador interpreta antes de que el código fuente sea compilado. El preprocesador produce un programa escrito en C que es lo que se compila después. Deben empezar con el símbolo " # " en la primera columna. LAS FUNCIONES Un programa esta formado por funciones. No se pueden definir anidadas. Desde una función se puede llamar a cualquier otra. Está permitida la recursividad. Si no se indica otro tipo, las funciones son de tipo "int" por defecto El mecanismo de paso es por valor. DEVUELVEN UN VALOR. La función "main" Todo programa debe contener una función llamada

description

c

Transcript of El Lenguaje C Fue Diseñado Por Dennis Ritchie 2

El lenguaje C fue diseado por Dennis Ritchie, de los Laboratorios Bell, y se instal en un PDP-11 en 1972. Se dise para ser el lenguaje de los sistemas operativos UNIX. Se cre para superar las limitaciones del lenguaje B, utilizado por Ken Thompson para producir la versin original de UNIX en 1970. El lenguaje B se bas en BCPL, lenguaje sin tipos desarrollado por Martin Richards, en 1967, para programacin de sistemas.ES UN LENGUAJE DE NIVEL MEDIO Combina elementos de lenguajes de alto nivel (tipos, bloques, ...) con la funcionalidad de los ensambladores. Permite manejar los elementos tpicos de la programacin de sistemas: bits bytes direcciones NO ESTA FUERTEMENTE ORIENTADO A TIPOS Tiene cinco tipos de datos bsicos, tipos estructurados y admite definicin de tipos por el usuario. Pero permite casi todas las conversiones (p.ej. se pueden mezclar los tipos "int" y "char" en casi todas las expresiones). No hace comprobaciones de error en tiempo de ejecucin (desbordamiento de arrays, ...) "Deja hacer" al programador.ES UN LENGUAJE SEMI-ESTRUCTURADO No es completamente estructurado en bloques porque no permite declarar procedimientos o funciones dentro de otros procedimientos o funciones. Pero tiene algunas caractersticas propias de los lenguajes estructurados: Dos formas de estructuracin del cdigo: Con funciones independientes Con bloques Dispone de las sentencias tpicas para construir estructuras de control: while do-while forES UN LENGUAJE PARA PROGRAMADORES Algunos otros lenguajes estn hechos para no-programadores (BASIC, COBOL, ...) El lenguaje C est influenciado, diseado y probado por programadores profesionales. Proporciona: Una visin prxima a la mquina Pocas restricciones Pocas pegas Conjunto reducido de palabras clave Estructuracin en bloques Funciones independientes Recursos para el encapsulamiento de datos Permite alcanzar casi la eficiencia del cdigo ensamblador, junto con la estructuracin propia de lenguajes como ALGOL, MODULA-2. Se dise para la programacin de sistemas Los programas son muy transportables Actualmente se usa para otros propsitosFormato de programaLos programas se construyen con: Comentarios. Ordenes para el preprocesador de macros. Definiciones de funciones. Expresiones formadas con constantes, variables, funciones y operadores. Sentencias.EL FORMATO DE ESCRITURA ES MUY FLEXIBLE: Las constantes, identificadores y palabras clave deben separarse; pero ello puede hacerse con : - espacios en blanco - marcas de tabulador - marcas de salto de linea comentariosLOS COMENTARIOS Son lineas que ignora el compilador pero sirven para documentar los programas: Empiezan con: /* terminan con: */ pueden abarcar varias lineas no se pueden anidar

LAS SENTENCIAS PARA EL PREPROCESADOR Son rdenes que el preprocesador interpreta antes de que el cdigo fuente sea compilado. El preprocesador produce un programa escrito en C que es lo que se compila despus.Deben empezar con el smbolo " # " en la primera columna.LAS FUNCIONES Un programa esta formado por funciones. No se pueden definir anidadas. Desde una funcin se puede llamar a cualquier otra. Est permitida la recursividad. Si no se indica otro tipo, las funciones son de tipo "int" por defecto El mecanismo de paso es por valor. DEVUELVEN UN VALOR. La funcin "main" Todo programa debe contener una funcin llamada "main". Es la invocada desde el sistema operativo cuando comienza la ejecucin del programa. Tambin devuelve un valor al medio de llamada.EXPRESIONES Una expresin se forma combinando constantes, variables, operadores y llamadas a funciones. s = s + i n == 0 ++i Una expresin representa un valor que es el resultado de realizar las operaciones indicadas siguiendo las reglas de evaluacin establecidas en el lenguaje. Con expresiones se forman sentencias, con sentencias se forman funciones y con funciones se construye un programa completo.Algunos operadores De relacin:

Funcin Printf.Contiene un formato de salida, adems muestra en pantalla la cadena representada por cadena de control y devuelve el nmero de bits escritos cuyos valores van desde -1 hasta 65535. est definida dentro de la directriz stdio.hEspecificadores de formato ms comunesPermite la representacin de los valores almacenados en las variables correspondientes. Cada especificador de formato se asocia a la variable que ocupa en lista de argumentos la misma posicin relativa que el especificador de formato.Por ejemplo:Printf ("%d es > que %d que es > que %d", max, med, min);LetraDescripcin

%dNmero entero con signo decimal ( int )

%uNmero entero sin signo decimal ( int )

%oNmero entero sin signo en octal (unsignet int )

%xNmero entero sin signo en hexadecimal (unsignet int )

%fNmeros reales (float, double) en formato ( -) ddd.ddd

%eNmeros reales (float, double) ( - ) d.dddd (t) ddd

%gNmeros reales (float, double) en formato corto

%cCaracter (char)

%sCadena de caracter

%iNmero entero (int)

Funcin ScanfSirve para leer datos en cualquier formato desde el dispositivo estndar del teclado, devolviendo el nmero de datos ledos correctamente.Ejemplo:Scanf ("%d", &d);

&Ampersan (scanf)%Operador modular (printf)

Especificadores de formatoPermite la captura de datos de un tipo adecuado a dicha funcin. Los especificadores de formato en la funcinscanfse escribe de acuerdo con la siguientesintaxis.Ejemplo:scanf ("%d %f %c", &a, &b, &c) ;

printf ("Dame tu edad");

scanf ("%d es ",&e) ;

Las clases Cout y CinCoutMuestra en pantalla texto que contiene el programa como salida. Adems de mostrar una copia del valor almacenado en una variable.CinEntrada de datos al programa utilizando el objeto CIN. En conclusin se usa para introducir datos a un programa mientras este se ejecuta por medio del teclado y guarda el elemento en una variable, pudiendo mostrar posteriormente el resultado con el objeto Cout.Sintaxis:cout > variable ;

INCLUDE#include

En este caso, la directiva#includeindica, alpreprocesador, que debe incluir, antes de la compilacin, en el cdigo fuente del programa, el contenido del archivo(stdio,Standard Input/Output). En dicho archivo estn escritas las declaraciones de todas lasfunciones de entrada y salida estndarde la biblioteca estndar de C, comoprintf. Si el compilador no sabe quien esprintf, no podr generar el cdigo objeto del programa.

Las funciones de la biblioteca estndar de C estn clasificadas en base a su funcionalidad, y sus declaraciones se agrupan en archivos con extensin (.h), los cuales son llamadosarchivos de cabecera. Adems destdio.h, algunos de los archivos de cabecera ms utilizados en C son:math.h,string.hystdlib.h. En ellos estn escritas, respectivamente, las declaraciones de las funciones matemticas, funciones de cadena y funciones de utilidad de la biblioteca estndar de C.

Despus de#include, el nombre del archivo de cabecera se puede escribir entre los caracteresmenorymayor(), o entre comillas dobles("stdio.h"). Cuando se escriba entre comillas dobles, el preprocesador buscar dicho archivo en el directorio actual de trabajo, y de no encontrarlo ah, entonces lo buscar en el directorio especificado por el compilador. En el caso de escribirse entre los caracteresmenorymayor, el proceso de bsqueda ser al revs.

MAINExiste una funcin que est presente en todos los programas escritos en lenguaje C, su misin es marcar el inicio y fin de la ejecucin de cada uno de ellos; es la funcin principal, la primera que se ejecuta; es la funcinmain. Su sintaxis "bsica" es:

int main(){ }

La funcinmaincontiene albloque de instrucciones principal de un programa, dentro de los caracteresabrir llave({) ycerrar llave(}).

Los parntesis "()" escritos despus demainsirven para indicar que el identificadormaines una funcin. Es importante comprender quemainno es una palabra reservada de C. Ningn identificador de funcin lo es.

Finalmente, no podemos pasar por alto que delante demainse ha escrito lapalabra reservadaint; enseguida veremos el porqu.