You are on page 1of 6

Universidad de El Salvador

Facultad Multidisciplinaria de Occidente


Departamento de Matematica.
Inform
atica Especial de Matematica.
Encargado: Marlon Vasquez.
TEORIA DE C++

Part I

Introducci
on a C++
Antes de hablar de C++, es necesario explicar que un lenguaje de programacion es una herramienta que
nos permite comunicarnos e instruir a la computadora para que realice una tarea especfica. Cada lenguaje
de programacion posee una sintaxis y un lexico particular, es decir, forma de escribirse que es diferente en
cada uno por la forma que fue creado y por la forma que trabaja su compilador para revisar, acomodar y
reservar el mismo programa en memoria.
Existen muchos lenguajes de programaci
on de entre los que se destacan los siguientes:
C++
C
Basic
Java
Pascal
Python
Fortran
Smalltalk
Un lenguaje de programaci
on es un lenguaje formal dise
nado para realizar procesos que pueden ser llevados a cabo por m
aquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento fsico y logico de una m
aquina,
para expresar algoritmos con precisi
on, o como modo de comunicacion humana.
Esta formado por un conjunto de smbolos y reglas sintacticas y semanticas que definen su estructura y el
significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila
(de ser necesario) y se mantiene el c
odigo fuente de un programa informatico se le llama programaci
on.

Tambien la palabra programaci


on se define como el proceso de creacion de un programa de computadora,
mediante la aplicaci
on de procedimientos l
ogicos, a traves de los siguientes pasos:

El desarrollo l
ogico del programa para resolver un problema en particular.
Escritura de la l
ogica del programa empleando un lenguaje de programacion especfico (codificaci
on
del programa).
Ensamblaje o compilaci
on del programa hasta convertirlo en lenguaje de maquina.
Prueba y depuraci
on del programa.
Desarrollo de la documentaci
on.
Existe un error com
un que trata por sinonimos los terminos lenguaje de programacion y lenguaje
informatico. Los lenguajes inform
aticos engloban a los lenguajes de programacion y a otros mas, como por
ejemplo HTML (lenguaje para el marcado de paginas web que no es propiamente un lenguaje de programacion, sino un conjunto de instrucciones que permiten estructurar el contenido de los documentos).
Permite especificar de manera precisa sobre que datos debe operar una computadora, como deben ser
almacenados o transmitidos y que acciones debe tomar bajo una variada gama de circunstancias. Todo
esto, a traves de un lenguaje que intenta estar relativamente proximo al lenguaje humano o natural. Una
caracterstica relevante de los lenguajes de programacion es precisamente que mas de un programador pueda
usar un conjunto com
un de instrucciones que sean comprendidas entre ellos para realizar la construcci
on de
un programa de forma colaborativa.

Sintaxis

A la forma visible de un lenguaje de programacion se le conoce como sintaxis. La mayora de los lenguajes de
programacion son puramente textuales, es decir, utilizan secuencias de texto que incluyen palabras, n
umeros
y puntuacion, de manera similar a los lenguajes naturales escritos. Por otra parte, hay algunos lenguajes
de programacion que son m
as gr
aficos en su naturaleza, utilizando relaciones visuales entre smbolos para
especificar un programa.
La sintaxis de un lenguaje de programacion describe las combinaciones posibles de los smbolos que
forman un programa sint
acticamente correcto. El significado que se le da a una combinacion de smbolos es
manejado por su sem
antica (ya sea formal o como parte del codigo duro de la referencia de implementaci
on).
Dado que la mayora de los lenguajes son textuales, este artculo trata de la sintaxis textual.
La sintaxis de los lenguajes de programacion es definida generalmente utilizando una combinacion de expresiones regulares (para la estructura lexica) y la Notacion de Backus-Naur (para la estructura gram
atica).
Este es un ejemplo de una gram
atica simple, tomada de Lisp:

T
ecnicas

Para escribir programas que proporcionen los mejores resultados, cabe tener en cuenta una serie de detalles.
Correcci
on. Un programa es correcto si hace lo que debe hacer tal y como se establecio en las fases
previas a su desarrollo. Para determinar si un programa hace lo que debe, es muy importante especificar
claramente que debe hacer el programa antes de desarrollarlo y, una vez acabado, compararlo con lo que
realmente hace.

Claridad. Es muy importante que el programa sea lo mas claro y legible posible, para facilitar as
su desarrollo y posterior mantenimiento. Al elaborar un programa se debe intentar que su estructura sea
sencilla y coherente, as como cuidar el estilo en la edicion; de esta forma se ve facilitado el trabajo del programador, tanto en la fase de creaci
on como en las fases posteriores de correccion de errores, ampliaciones,
modificaciones, etc. Fases que pueden ser realizadas incluso por otro programador, con lo cual la claridad
es a
un mas necesaria para que otros programadores puedan continuar el trabajo facilmente. Algunos programadores llegan incluso a utilizar Arte ASCII para delimitar secciones de codigo. Otros, por diversi
on o
para impedir un an
alisis c
omodo a otros programadores, recurren al uso de codigo ofuscado.

Eficiencia. Se trata de que el programa, ademas de realizar aquello para lo que fue creado (es decir,
que sea correcto), lo haga gestionando de la mejor forma posible los recursos que utiliza. Normalmente, al
hablar de eficiencia de un programa, se suele hacer referencia al tiempo que tarda en realizar la tarea para
la que ha sido creado y a la cantidad de memoria que necesita, pero hay otros recursos que tambien pueden
ser de consideracion al obtener la eficiencia de un programa, dependiendo de su naturaleza (espacio en disco
que utiliza, trafico de red que genera, etc.).

Portabilidad. Un programa es portable cuando tiene la capacidad de poder ejecutarse en una plataforma,
ya sea hardware o software, diferente a aquella en la que se elaboro. La portabilidad es una caracterstica
muy deseable para un programa, ya que permite, por ejemplo, a un programa que se ha desarrollado para
sistemas GNU/Linux ejecutarse tambien en la familia de sistemas operativos Windows. Esto permite que
el programa pueda llegar a m
as usuarios m
as facilmente.

Historia de C++

C++ es un lenguaje de programaci


on creado por Bjarne Stroustrup en los laboratorios de At T en 1983.
Stroustrup tomo como base el lenguaje de programacion mas popular en aquella epoca el cual era C.

El C++ es un derivado del mtico lenguaje C, el cual fue creado en la decada de los 70 por la mano del finado Dennis Ritchie para la programaci
on del sistema operativo (un sistema parecido a Unix es GNU/Linux),
el cual surgio como un lenguaje orientado a la programacion de sistemas (System Programming) y de herramientas (Utilities) recomendado sobre todo para programadores expertos, y que no llevaba implementadas
muchas funciones que hacen a un lenguaje mas comprensible.

Sin embargo, aunque esto en un inicio se puede convertir en un problema, en la practica es su mayor
virtud, ya que permite al programador un mayor control sobre lo que esta haciendo. A
nos mas tarde, un
programador llamado Bjarne Stroustrup, creo lo que se conoce como C++.

Necesitaba ciertas facilidades de programacion, incluidas en otros lenguajes pero que C no soportaba, al
menos directamente, como son las llamadas clases y objetos, principios usados en la programacion actual.
Para ello redise
no C, ampliando sus posibilidades pero manteniendo su mayor cualidad, la de permitir al
programador en todo momento tener controlado lo que esta haciendo, consiguiendo as una mayor rapidez
que no se conseguira en otros lenguajes.
C++ pretende llevar a C a un nuevo paradigma de clases y objetos con los que se realiza una comprensi
on
mas humana basandose en la construcci
on de objetos, con caractersticas propias solo de ellos, agrupados
en clases. Es decir, si yo quisiera hacer un programa sobre animales, creara una clase llamada animales, en
la cual cada animal, por ejemplo un pato, sera un objeto, de tal manera que se ve el intento de esta forma
de programar por ser un fiel reflejo de c
omo los humanos (en teora) manejamos la realidad.
Se dice que nuestro cerebro trabaja de forma relacional[referencia] (relacionando hechos), es por ello que
cada vez que recuerdas algo, (cuentas un hecho), termina siendo diferente (se agregan u omiten partes).
Qu
e es C++
C++ es un lenguaje de programaci
on orientado a objetos que toma la base del lenguaje C y le agrega
la capacidad de abstraer tipos como en Smalltalk.
La intencion de su creaci
on fue el extender al exitoso lenguaje de programacion C con mecanismos que
permitieran la manipulaci
on de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados
a objetos, el C++ es un lenguaje hbrido [por? fusionar con el siguiente].

Posteriormente se a
nadieron facilidades de programacion generica, que se sumo a los otros dos paradigmas que ya estaban admitidos (programaci
on estructurada y la programacion orientada a objetos). Por esto
se suele decir que el C++ es un lenguaje de programacion multiparadigma.

Instalaci
on de Dev-C++

En este documento se describe como instalar el compilador Dev-C++. Los requerimientos mnimos para
ejecutar Dev-C++ son:

Microsoft Windows 95, 98, NT 4, 2000, XP


32 MB RAM
100 Mhz Intel compatible CPU
30 MB de espacio libre de disco
El programa de instalaci
on se puede conseguir de varias formas:

En la pagina Web del equipo de desarrollo del entorno Dev-C++


www.bloodshed.net/dev/devcpp.html.
En la URL
http://www.ugr.es/ jalcala/teaching/Informatica/index.html.

Una vez conseguido, el fichero de instalacion devcpp-4.9.9.2setup.exe (el nombre vara seg
un sea la
version) este contiene todo lo necesario para instalar el entorno de programacion Dev-C++ y el compilador

de C/C++. La instalaci
on de este software es bastante simple. Unicamente
hay que acceder al directorio
donde se descargo y hacer doble click sobre el fichero devcpp-4.9.9.2setup.exe. Automaticamente, se lanza
el software de instalaci
on y ser
a necesario seguir los siguientes pasos y dar clic en siguiente, siguiente.

Part II

Variables, constantes, operadores y expresiones


5

Variables

- Tipos de datos b
asicos: char, int, float, double, void.

- Variables locales al bloque en que se declaran.


- Clases de almacenamiento: auto, static, register, extern, const.
- Tipos estructurados. Arrays: modificador [].
- Inicializacion en lnea de variables. (int i=25;)
- Operador de asignaci
on. Conversi
on de tipos por defecto en expresiones.

Constantes

- Numericas de todo tipo. (123.45, 17)


- Tipo caracter. Encerradas entre . (a)
- Constantes car
acter de barra invertida.
- Constantes cadena. Encerradas entre . Terminadas con el caracter nulo . (Esto es una constante
de tipo cadena). Las constantes cadena se tratan como punteros a caracter.

You might also like