Autor: Salvador Pozo Coronado E-mail: Salvador@conclase

Transcription

Autor: Salvador Pozo Coronadoe-mail: salvador@conclase.netTrascripción del curso alojado en la página: http://c.conclase.net

Curso C C con ClasePág. 2TABLA DE CONTENIDOTABLA DE CONTENIDO. 2Introducción . 9Proceso para la obtención de un programa ejecutable . 10Fichero fuente y programa o código fuente: . 11Ficheros objeto, código objeto y compiladores: . 11Librerías: . 11Ficheros ejecutables y enlazadores: . 11Errores:. 12Propósito de C y C . 13CAPITULO 1 Toma de contacto . 14CAPITULO 2 Tipos de variables I . 16Tipos fundamentales . 16Tipo "char" o carácter: . 16Tipo "int" o entero: . 17Tipo "float" o coma flotante: . 17Tipo "bool" o Booleana: . 18Tipo "double" o coma flotante de doble precisión: . 18Tipo "void" o sin tipo:. 18Tipo "enum" o enumerado:. 19Palabras reservadas usadas en este capítulo. 19CAPITULO 3 Funciones I: Declaración y definición . 21Prototipos de funciones. 22Estructura de un programa C/C :. 23Palabras reservadas usadas en este capítulo. 23CAPITULO 4 Operadores I. 24Operadores aritméticos . 24Operadores de asignación . 26Operador coma. 27Operadores de igualdad . 27Operadores lógicos . 28Operadores relacionales . 29Nota:. 30CAPITULO 5 Sentencias. 31Bloques . 31Expresiones . 31Llamadas a función . 32Asignación . 32Nula. 32Bucles. 33Bucles "while" . 33Bucle "do while" . 33Bucle "for" . 34Etiquetas. 34Etiquetas de identificación. 34Etiquetas "case" y "default" . 35Selección . 35Salvador Pozo Coronadosalvador@conclase.net

Curso C C con ClasePág. 3Sentencia "if.else" . 35Sentencia "switch" . 35Sentencias de salto . 37Sentencia de ruptura "break" . 37Sentencia de "continue" . 37Sentencia de salto "goto" . 38Sentencia de retorno "return". 38Sobre las sentencias de salto y la programación estructurada . 38Comentarios . 39Palabras reservadas usadas en este capítulo. 39CAPITULO 6 Declaración de variables . 40Cómo se declaran las variables . 40Ámbito de las variables: . 40Ejemplos capítulos 1 a 6 . 42Ejemplo 1. 42Ejemplo 2. 43Ejemplo 3. 44Ejemplo 4. 45CAPITULO 7 Normas para la notación . 46Constantes "int" . 46Constantes "long". 47Constantes "unsigned" . 47Constantes "float" . 47Constantes "char". 47¿Por qué es necesaria la notación?. 49CAPITULO 8 Cadenas de caracteres . 50CAPITULO 9 Librerías estándar . 52Librería de entrada y salida fluidas "iostream.h". 52Librería de entrada y salida estándar "stdio.h" . 53Función "getchar()". 54Función "putchar()" . 54Función "gets()" . 55Función "puts()". 55Función "printf()". 56Librería de rutinas de conversión estándar "stdlib.h" . 61Función "atoi()" . 62Función "system()" . 62Función "max()". 63Función "min()" . 63Función "abs()" . 63Función "rand()" . 64Función "srand()". 64Librería rutinas de conversión y clasificación de caracteres "ctype.h". 64Función "toupper()" . 64Función "tolower()" . 65Macros "is conjunto ()" . 65Ejemplos capítulos 7 a 9 . 67Ejemplo 5. 67Ejemplo 6. 67Ejemplo 7. 68Salvador Pozo Coronadosalvador@conclase.net

Curso C C con ClasePág. 4Ejemplo 8. 69CAPITULO 10 Conversión de tipos. 71"Casting", conversiones explícitas de tipo:. 72CAPITULO 11 Tipos de variables II: Arrays o Arreglos. 73Asignación de arrays:. 74Algoritmos de ordenación, método de la burbuja:. 74Ejercicios (creo que ya podemos empezar con los ejercicios :-) : . 75CAPITULO 12 Tipos de variables III: Estructuras . 76Funciones en el interior de estructuras: . 77Asignación de estructuras: . 79Arrays de estructuras: . 79Estructuras anidadas: . 80Campos de bits:. 80Palabras reservadas usadas en este capítulo. 83Ejercicios: . 83CAPITULO 13 Tipos de variables IV: Punteros 1 . 84Declaración de punteros: . 85Correspondencia entre arrays y punteros:. 86Operaciones con punteros:. 87Asignación. . 87Operaciones aritméticas. . 87Comparación entre punteros. . 88Punteros genéricos. . 88Punteros a estructuras: . 89Ejemplos: . 90Variables dinámicas:. 91Ejercicios: . 92CAPITULO 14 Operadores II: Más operadores . 94Operadores de Referencia (&) e Indirección (*). 94Operador "sizeof". 94Operadores . y - . 94Operador de preprocesador . 95Directiva define: . 95Directiva include:. 96Operadores de manejo de memoria "new" y "delete". 97Operador new:. 97Operador delete:. 97Palabras reservadas usadas en este capítulo. 98CAPITULO 15 Operadores III: Precedencia. 99Ejercicios: . 100CAPITULO 16 Funciones II: Parámetros por valor y por referencia. 102Referencias a variables: . 103Pasando parámetros por referencia: . 103Punteros como parámetros de funciones: . 104Arrays como parámetros de funciones: . 105Estructuras como parámetros de funciones: . 105CAPITULO 17 Más librerías estándar: string.h . 106Librería rutinas de manipulación de cadenas "string.h" . 106Función "strlen()". 106Función "strcpy()". 106Salvador Pozo Coronadosalvador@conclase.net

Curso C C con ClasePág. 5Función "strcmp()". 107Función "strcat()". 108Función "strncpy()". 108Función "strncmp()". 109Función "strncat()". 109Función "strtok()" . 110CAPITULO 18 Estructuras II: Uniones. 112Estructuras anónimas: . 114Palabras reservadas usadas en este capítulo. 114CAPITULO 19 Punteros II: Arrays dinámicos. 115Problema: . 118CAPITULO 20 Operadores IV: Más operadores . 119Operadores de bits . 119Ejemplos: . 120Operador condicional. 120CAPITULO 21 Definición de tipos, tipos derivados. 122Ejemplos: . 122Palabras reservadas usadas en este capítulo. 123CAPITULO 22 Funciones III . 124Parámetros con valores por defecto . 124Funciones con número de argumentos variable. 125Tipos: . 125Macros: . 125Argumentos de main. . 127Funciones inline . 128Palabras reservadas usadas en este capítulo. 129Inline.CAPITULO 23 Funciones IV: Sobrecarga. 129CAPITULO 23 Funciones IV: Sobrecarga . 130Ejercicio: . 131CAPITULO 24 Operadores V: Operadores sobrecargados . 132Palabras reservadas usadas en este capítulo. 133CAPITULO 25 El preprocesador. 134Directiva #define: . 134Directiva #undef: . 135Directivas #if, #elif, #else y #endif. 135Directivas #ifdef e #ifndef: . 136Directiva #error:. 137Directiva #include:. 137Directiva #line: . 138Directiva #pragma: . 138CAPITULO 26 Funciones V: Recursividad . 139CAPITULO 27 Tipos de Variables V: tipos de almacenamiento. 143auto. 143register . 143static . 143extern . 143Palabras reservadas usadas en este capítulo. 144CAPITULO 28 Clases I: Definiciones . 145POO: . 145Objeto: . 145Salvador Pozo Coronadosalvador@conclase.net

Curso C C con ClasePág. 6Mensaje:. 145Método: . 145Clase: . 146Interfaz: . 146Herencia: . 146CAPITULO 29 Declaración de una clase. 147Especificaciones de acceso: . 148Acceso privado, private: . 149Acceso público, public:. 149Acceso protegido, protected: . 149Palabras reservadas usadas en este capítulo. 149CAPITULO 30 Constructores . 150Inicialización de objetos: . 151Sobrecarga de constructores: . 152Constructores con argumentos por defecto:. 152Asignación de objetos:. 153Constructor copia:. 153CAPITULO 31 Destructores . 155CAPITULO 32 El puntero this . 158Palabras reservadas usadas en este capítulo. 159CAPITULO 33 Sistema de protección . 160Declaraciones friend . 160Funciones externas amigas . 160Funciones amigas en otras clases. 161Clases amigas. 162Palabras reservadas usadas en este capítulo. 163CAPITULO 34 Modificadores para miembros . 164Funciones en línea (inline):. 164Funciones miembro constantes . 165Valores de retorno constantes . 166Miembros estáticos de una clase (Static) . 167Palabras reservadas usadas en este capítulo. 170CAPITULO 35 Más sobre las funciones . 171Funciones sobrecargadas: . 171Funciones con argumentos con valores por defecto: . 172CAPITULO 36 Operadores sobrecargados: . 173Sobrecarga de operadores binarios: . 173Sobrecargar el operador de asignación: ¿por qué? . 175Operadores binarios que pueden sobrecargarse:. 176Forma funcional de los operadores:. 178Sobrecarga el operadores para la clases con punteros: . 178Sobrecarga de operadores unitarios: . 180Operadores unitarios sufijos: . 181Operadores unitarios que pueden sobrecargarse:. 182Operadores de conversión de tipo. 182Sobrecarga del operador de indexación []: . 183Sobrecarga del operador de llamada (): . 185CAPITULO 37 Herencia: . 187Jerarquía, clases base y clases derivadas: . 187Derivar clases, sintaxis: . 188Salvador Pozo Coronadosalvador@conclase.net

Curso C C con ClasePág. 7Constructores de clases derivadas: . 189Inicialización de clases base en constructores: . 190Inicialización de objetos miembros de clases: . 191Sobrecarga de constructores de clases derivadas:. 192Destructores de clases derivadas: . 193CAPITULO 38 Funciones virtuales: . 194Redefinición de funciones en clases derivadas:.

Curso C C con Clase Pág. 9 Salvador Pozo Coronado salvador@conclase.net Introducción Finalmente me he decidido a escribir un curso de C en una página web. Probablemente estoy pecando de presuntuoso, y me esté metiendo en camisa de once varas. Pero, algunas veces hay que ser valiente.