Libro Programación 2 UANL
Enviado por MarioTurner • 1 de Noviembre de 2013 • 10.341 Palabras (42 Páginas) • 375 Visitas
Programación II
Lenguaje C++
NIVEL MEDIO SUPERIOR
INTRODUCCIÓN
En los diferentes ámbitos de trabajo y estudio de la actualidad, el uso de las diferentes tipos de software busca desarrollar el pensamiento lógico y las capacidades de abstracción en las personas para encontrar la solución a problemas cotidianos, mediante la utilización de técnicas y lenguajes de programación.
Por tal motivo en este curso de Programación II se enfoca a extender o ampliar en los alumnos sus habilidades y capacidades de pensamiento lógico y crítico, que ayuden en mayor medida a incrementar sus niveles académicos y sus expectativas en el uso apropiado del programa C++.
C++ es un lenguaje muy eficiente por lo que es adecuado para desarrollar software en el que la velocidad de ejecución sea importante: por ejemplo Sistemas operativos, sistemas de tiempo real, compiladores, etc.
Más aún, C++ es un lenguaje simple, potente y orientado a objetos. Su sintaxis incita al programador a generar programas modulares y fáciles de mantener.
El objetivo de este manual es que cualquier persona, aunque sea un principiante pueda aprender de una forma sencilla a programar con el lenguaje C++, utilizando la potencia de la biblioteca estándar de C++.
CONTENIDO
ETAPA I DATOS STRING Y ESTRUCTURAS
ETAPA II PUNTEROS Y FUNCIONES
ETAPA III ARCHIVOS SECUENCIALES
ETAPA IV ARCHIVOS BINARIOS
ETAPA I
TIPOS DE DATOS STRING Y ESTRUCTURAS
DATOS STRING
Los datos String son un conjunto de caracteres, o valores de tipo "char", terminados con el carácter nulo, es decir el valor numérico 0. Internamente se almacenan en posiciones consecutivas de memoria. Este tipo de estructuras recibe un tratamiento especial, y es de gran utilidad y de uso continuo. Están encargados de modelar una cadena de caracteres (frase), encapsulando mucha de la programación a bajo nivel y brindando métodos capaces de cumplir con muchas de las funciones que necesitaremos para manipular el tipo de datos más utilizado en cualquier programa.
La clase string está definida en la cabecera string (#include <string>). Tan solo incluyéndola en nuestros módulos podremos acceder a ella. Pero si buscamos un poco más de comodidad, sea porque usaremos esa clase muchas veces en el código o por legibilidad, deberemos especificar que se utilizará el espacio de nombres estandar (using namespace std;).
#include <string>
using namespace std;
Cuando se declara una cadena hay que tener en cuenta que tendremos que reservar una posición para almacenar el carácter nulo, de modo que si queremos almacenar la cadena "HOLA", tendremos que declarar la cadena como:
string Saludo[5];
Cuatro caracteres para "HOLA" y uno extra para el carácter '\000'.
También nos será posible hacer referencia a cada uno de los caracteres individuales que componen la cadena, simplemente indicando la posición. Por ejemplo el tercer carácter de nuestra cadena de ejemplo será la 'L', podemos hacer referencia a él como Saludo[2]. Los índices tomarán valores empezando en el cero, así el primer carácter de nuestra cadena sería
Saludo[0], que es la 'H'.
Una cadena puede almacenar informaciones como nombres de personas, mensajes de error, números de teléfono, etc.
Instanciación e inicialización.
La clase string es muy especial en cuanto a su instanciación e inicialización. A continuación se colocan todas las formas de hacerlo.
string s1;
s1 = "http://";
string s2 = "foros";
string s3(".clubdedesarrolladores.com");
string s4(1, char(32));
string s5(2, 'n');
string s6 (s3, 5, 15);
string s7 ("de");
string msg = s1+s2+s3+s5+s2+s4+s7+s4+s6;
Como se puede ver, es muy flexible su instanciación e inicialización. El objeto msg contendrá:
http://foros.clubdedesarrolladores.com
Foros de desarrolladores
Operadores
La clase string hace uso de sobrecarga de operadores para facilitarnos la escritura de código que manipule operaciones comunes con cadenas de caracteres.
Operador de asignación (=)
Permite modificar la cadena que contiene la instancia de la clase.
Ejemplos:
Código
s1 = "Texto";
Operador de concatenación (+ y +=)
Permite unir dos cadenas de caracteres en una sola. La segunda se utiliza para agregar al final.
Ejemplos:
"Un " + s1 + " Importante";
Operadores de comparación (==, !=, <, >, <= y >=)
Retornan valores booleanos true o false dependiendo que se cumpla o no la condición que el operador indica.
Ejemplos:
bool iguales = s1 == "texto";//retorna falso porque son case sensitive
Operador índice ([])
Permite el acceso a una posición absoluta dentro de la cadena de caracteres. Trabaja con tipo de dato char.
Ejemplos:
s1[0] = (s1+" largo")[1];
Nota. Los operadores de inserción y extracción (<< >>) no forman parte de la clase string, los implementan otras clases, por ejemplo las de salidas y entradas standart cin y cout.
Insertar un string en otro
....
string str1 = "Programar En C++";
string str2 = "Es Divertido";
str1.insert(str2.size(),str2); //inserta el tamaño de str2 y la cadena str2 a str1
...
//El Resultado seria "Programar En C++ Es Divertido"
ESTRUCTURAS
Las estructuras son el segundo tipo de datos estructurados que veremos. Las estructuras nos permiten agrupar varios datos, aunque sean de distinto tipo, que mantengan algún tipo de relación, y manipularlos todos juntos, con un mismo identificador, o por separado.
Las estructuras son llamadas también muy a menudo registros, o en inglés "records". Y son estructuras análogas en muchos aspectos a los registros de bases de datos. Y siguiendo la misma analogía, cada variable
...