Professional Documents
Culture Documents
Programacin Bsica
Diap.1
Historia
El lenguaje C tuvo sus orgenes en los primeros aos la dcada de los 70's, un programador de nombre Dennis Ritchie de la !"#" $ell% ide& un lenguaje de programaci&n 'ue le permitiese manejar el hard(are como en el Ensamblador ) al mismo tiempo usar programaci&n estructurada como en los lenguajes de alto nivel* +a primera versi&n de C corra sobre m,'uinas -D-.7 ) -D-.// con sistema operativo 0123* -osteriormente reescribi& el propio compilador de C de 0123 en el mismo C, ) a4n m,s tarde el propio 0123 se escribi& en C* Cuando !"#" decidi& ceder a un precio bastante bajo% el sistema operativo a varias universidades, empe5& el auge del lenguaje C* De sta manera cuando las -C's se volvieron comerciales aparecieron varias versiones de compiladores de C de distintas compaas de so6t(are%*
Diap.2
Historia (cont.)
Dada la situacin anterior en 1983 el Instituto Americano de Estandarizacin (ANSI, American National Standards Institute) decidi estandarizar al C, lo cual se cumpli en 1989 con la ayuda de la Organizacin Internacional de Normalizacin (ISO). En 1998 se defini al estndar C++, que era una evolucin de C hacia la programacin orientada a objetos, desarrollada por Bjarnes Stroutstrup de la misma AT&T Bell.
April 13, 2014
Diap.3
Caractersticas
C y/o C++ son lenguajes de nivel medio porque poseen caractersticas de programacin estructurada pero con la flexibilidad del Ensamblador. Ejemplos de lenguajes estructurados.
1o estructurados
9:R"R!1 $asic Cobol
!lto 1ivel
Estructurados
-ascal !da C<< C ;ava
1ivel $ajo
Diap.4
Compiladores C/C++
En la actualidad e>isten varios compiladores de C, encontr,ndose en boga a'uellos 'ue se orientan hacia el desarrollo en entornos gr,6icos* 0nos proponiendo sus propias reglas normas% ) otros respetando el standar, a los 'ue siendo de C 'ue se les suele denominar compiladores de !1?2 C@C<< o m,s recientemente 2?: C@C<<* !lgunos de ellos sonA Relo de 9i6so6t !pple C<< $orland C<< C)g(in 7inBC 7inimalist B10 6or Cindo(s% 7icroso6t Disual CE@C<< E>press Edition ) -ro6essional Edition%
April 13, 2014
Diap.5
Comparativa de IDE's
ANSI C TPICO WXDEVCPP
Diap.6
Diap.7
Diap.8
Variables
En la unidad 8 hablamos de variables ) tipos de variables, en C<< es importante el uso e6iciente de las variables dado 'ue la creaci&n de una de ellas signi6ica el uso de la memoria disponible en la -C* Crear demasiadas variables puede saturar la memoria ) obtener un 6uncionamiento lento del proceso* !'u en ve5 de tipos de variables hablaremos de tipos de datos, los cuales, seg4n veremos, son varios* -ara declarar una varia+le se sigue la siguiente sinta>is tipoGdato nombreGvariable IKvalorJL En la anterior declaraci&n los corchetes indican una parte opcional de la declaraci&n* "rate de e>plicar 'ue se hace en el c&digo de la derecha*
Diap.9
Variables (cont.)
"al como se haba mencionado, los nombres de las variables pueden estar 6ormados por combinaciones de letras ) n4meros, permitindose incluir s&lo al smbolo especial gui&n bajo G%* Recuerde 'ue se distinguen min4sculas de ma)4sculas* -or otro lado e>isten ciertas palabras 'ue en el argot de la programaci&n se les llama reservadas, dado 'ue el lenguaje se las reserva para su propio uso, por sta ra5&n dichas palabras no pueden usarse como nombres de variables*
Diap.10
Variables
+as variables se pueden clasi6icar en variables globales ) locales* +as variables globales son a'uellas 'ue se declaran antes de la 6unci&n principal main ) por lo tanto tienen valide5 a lo largo de toda la ejecuci&n del programa* +as variables locales se declaran dentro de las 6unciones ) por lo tanto s&lo tienen valide5 dentro de la 6unci&n donde 6ueron declaradas*
Diap.11
Constantes
En ocasiones ser, necesario declarar constantesA const tipoGdato nombreGcteKvalorL
Diap.12
Tipos de Datos
C<< cuenta con distintos tipos de datos at&micos, llamados de esa manera, por'ue a partir de ellos de pueden crear otros, algo 'ue se reali5a cuando se utili5a la 6iloso6a de la programaci&n orientada a objetos* Cada uno abarca distintos rangos de valores, ) por lo tanto, de distinto tamao en memoria*
Diap.13
Diap.14
Diap.15
Diap.16
Cual'uier caracter se puede representar con el smbolo TUV seguido del propio caracter o de su respectivo c&digo octal o he>adecimalA +as comillas dobles podran serA 'UV', o 'U0W8', o 'U>88'
Diap.17
Operadores bsicos
7ostramos a continuaci&n los operadores b,sicos 'ue como bien sabemos respetan la jerar'ua de operaciones*
,perador
< . X @ Y
'igni-icado
suma resta producto divisi&n m&dulo
Diap.18
Diap.19
Modificadores de operadores
Diap.20
Operadores de Desplazamiento
En trminos de bits el despla5amiento signi6ica el traslado a i5'uierda o derecha% de los bits contenidos en memoria*
El despla5amiento a derecha numricamente binariamente hablando% signi6ica una divisi&n entre dos* Caso opuesto de un despla5amiento a la i5'uierda* :peradores de despla5amiento* FF HH Despla5amiento a la i5'uierda Despla5amiento a la derecha
Diap.21
Operadores de Desplazamiento
Diap.22
Operadores relacionales
Son operadores binarios que permiten comparar valores o expresiones.
,perador 'igni-icado
7enor 'ue 7enor o igual 'ue 7a)or 'ue 7a)or o igual 'ue 2gual a Di6erente de
Diap.23
Operadores lgicos
De $its
,perador
0 2 4
De e>presiones
'igni-icado
1nd ,r "3clusiva ,r $nclusiva
,perador
00 44
'igni-icado
1nd l5gica ,r l5gica
Diap.24
Precedencia de Operaciones
Diap.25
Diap.26
Diap.28
Diap.29
Se le llama cast al hecho de impedir que se pierdan las caractersticas del tipo de datos de destino.
Tambin existen los manipuladores de flujo que permiten mostrar las salidas numricas en sus equivalentes decimal, octal y hexadecimal, los cuales funcionan con entrada y salida de datos. April 13, 2014 Unidad 3: Introduccin al Lenguaje C. Por: Lic. Edgar Hern ndez Garca
Diap.30
Diap.31
En cuanto a la presici&n, los datos 6lotantes utili5an hasta seis decimales despus del punto redondeando el 4ltimo* -ara indicar una presici&n espec6ica deberemos cargar la biblioteca iomanip, 'ue contiene al manipulador setpresicion()* "ambin se inclu)e a la 6unci&n miembro presicion()*
Diap.32
Diap.33
-ara mejorar el aspecto de nuestros programas podemos echar mano de algunas 6unciones como sonA set6 'ue se encarga de hacer aparecer el te>to alineado determinados espacios a la derecha, si el n4mero de espacios solicitados para su alineaci&n es menor 'ue el n4mero de caracteres 'ue se imprimir,n, no tendr, un e6ecto* set-ill se ocupa del caracter de relleno, el caracter por de6ecto es el espacio en blanco, pero nosotros podemos especi6icar el 'ue 'ueramos*
Diap.34
Diap.35