LIBROS PUBLICADOS
EVELIO ALFREDO GRANIZO MONTALVO
Posted 26 Sep 2016 | 16:00 GM
Índice
1. Introducción al Lenguaje C. 1
1.1. ORIGEN.. 1
1.2. VENTAJAS. 1
1.3. EL C COMO LENGUAJE DE NIVEL MEDIO.. 2
1.4. EL C COMO LENGUAJE DE ALTO NIVEL. 3
1.5. EL C COMO LENGUAJE ESTRUCTURADO.. 3
1.6. ESTRUCTURA DE UN PROGRAMA EN LENGUAJE C. 4
1.7. BIBLIOTECA DEL LENGUAJE C. 5
1.8. ENLAZADOR. 6
1.9. COMPILACIÓN SEPARADA.. 6
1.10. COMPILACIÓN DE UN PROGRAMA EN LENGUAJE C. 6
1.11. MAPA DE MEMORIA DEL LENGUAJE C. 7
1.12. PROGRAMAS LEGIBLES. 8
2. Tipos de Datos. 9
2.1. INTRODUCCIÓN.. 9
2.2. TIPOS DE DATOS. 9
2.2.1. Tipo char. 10
2.2.2. Tipo int. 10
2.2.3. Tipo float. 11
2.2.4. Tipo double. 12
2.2.5. Tipo void. 12
2.3. CONSTANTES. 13
2.3.1. Constantes Carácter. 14
2.3.2. Constantes Enteras. 15
2.3.3. Constantes de Punto Flotante. 16
2.3.4. Constantes Cadena. 16
2.4. IDENTIFICADORES. 17
2.5. DECLARACIÓN DE VARIABLES. 17
2.6. VARIABLES CADENAS DE CARACTERES. 20
2.7. INICIALIZACIÓN DE VARIABLES. 21
2.8. CONSTANTES SIMBÓLICAS. 21
2.9. MODIFICADORES DE ACCESO.. 22
2.9.1. El modificador const. 22
2.9.2. El modificador volatile. 23
2.10. COMENTARIOS. 23
2.11. OPERADORES. 23
2.11.1. Operador de Asignación. 24
2.11.2. Operadores Aritméticos. 25
2.11.3. Operadores Relacionales. 27
2.11.4. Operadores Lógicos. 28
2.11.5. Operadores a Nivel de Bits. 29
2.11.6. Otros operadores. 32
2.11.7. Precedencia de operadores. 36
2.12. EXPRESIONES. EVALUACIÓN DE EXPRESIONES. 37
2.13. CONVERSIONES DE TIPOS. 38
2.13.1. Automática. 39
2.13.2. Moldes (Casting). 41
PROBLEMAS PROPUESTOS. 43
3. Entrada/Salida por Consola. 51
3.1. INTRODUCCIÓN.. 51
3.2. ENTRADA/SALIDA POR CONSOLA CON FORMATO.. 51
3.2.1. Salida: printf(). 52
3.2.1.1. Salida con Formato. 52
3.2.1.2. Modificadores de Formato. 55
3.2.2. Entrada: scanf(). 58
3.2.2.1. Entrada con Formato. 58
3.2.2.2. Paso de Direcciones a scanf(). 64
3.2.2.3. Modificadores de Formato. 64
3.2.2.4. Eliminación de Entradas. 65
3.3. ENTRADA/SALIDA DE CARACTERES POR CONSOLA.. 66
3.3.1. Entrada. 66
3.3.2. Salida. 67
3.4. ENTRADA/SALIDA DE CADENAS DE CARACTERES POR CONSOLA.. 67
3.4.1. Entrada: gets(). 67
3.4.2. Salida: puts(). 68
PROBLEMAS PROPUESTOS. 71
4. Sentencias de Control 87
4.1. INTRODUCCIÓN.. 87
4.2. TIPOS DE SENTENCIAS. 87
4.3. SENTENCIAS DE CONTROL. 88
4.4. SENTENCIAS DE DECISIÓN.. 88
4.4.1. Decisión Binaria. 88
4.4.1.1. Sentencia if. 88
4.4.1.2. Sentencia if-else. 89
4.4.1.3. Sentencia else-if. 90
4.4.2. Decisión Múltiple: Sentencia switch. 93
4.5. SENTENCIAS DE REPETICIÓN.. 97
4.5.1. Sentencia while. 97
4.5.2. Sentencia for. 100
4.5.3. Sentencia do-while. 106
4.5.4. Lazos Anidados. 108
4.6. SENTENCIAS DE SALTO INCONDICIONAL. 109
4.6.1. La Sentencia return. 110
4.6.2. La Sentencia break. 110
4.6.3. La Sentencia continue. 111
4.6.4. La Sentencia goto. 112
4.6.5. La Función exit(). 113
PROBLEMAS PROPUESTOS. 115
5. Punteros. 131
5.1. VARIABLE PUNTERO.. 131
5.2. DECLARACIÓN DE LA VARIABLE PUNTERO.. 131
5.3. OPERADORES DE PUNTEROS. 132
5.3.1. El operador de Dirección (&). 132
5.3.2. El operador de Indirección (*). 133
5.4. OPERACIONES CON PUNTEROS. 135
5.4.1. Asignación de Punteros. 135
5.4.2. Aritmética de Punteros. 136
5.4.3. Comparación de Punteros. 138
5.5. INICIALIZACIÓN DE PUNTEROS. 138
5.6. INDIRECCIÓN MÚLTIPLE (PUNTERO A PUNTERO). 140
5.7. PROBLEMAS CON PUNTEROS. 142
PROBLEMAS PROPUESTOS. 145
6. Funciones. 149
6.1. INTRODUCCIÓN.. 149
6.2. TIPOS DE FUNCIONES. 150
6.3. ARGUMENTOS Y PARÁMETROS DE FUNCIONES. 151
6.3.1. Argumentos. 151
6.3.2. Parámetros Formales. 152
6.4. LLAMADA POR VALOR. 152
6.5. LLAMADA POR DIRECCIÓN.. 153
6.6. PROTOTIPOS DE FUNCIONES. 155
6.7. DEVOLUCIÓN DE UN VALOR POR LA FUNCIÓN: SENTENCIA return. 157
6.8. DEVOLUCIÓN DE UN PUNTERO POR LA FUNCIÓN.. 160
6.9. PUNTEROS A FUNCIONES. 163
6.10. FUNCIONES RECURSIVAS. 167
6.10.1. Definición. 167
6.10.2. Condiciones para crear las Funciones Recursivas. 173
6.10.3. Diferencias entre Funciones Recursivas e Iterativas. 175
6.11. LISTA DE PARÁMETROS VARIABLES. 176
6.11.1. Paso de Argumentos de Longitud Variable a Funciones. 177
6.11.2. Función vprintf(). 179
6.12. DECLARACIÓN DE PARÁMETROS DE FUNCIONES CLÁSICAS FRENTE A LAS MODERNAS 181
6.13. BIBLIOTECAS Y ARCHIVOS. 181
PROBLEMAS PROPUESTOS. 183
7. Modos de almacenamiento. 201
7.1. VARIABLES AUTOMÁTICAS: auto. 202
7.2. VARIABLES EXTERNAS: extern. 203
7.3. VARIABLES ESTÁTICAS LOCALES: static. 205
7.4. VARIABLES ESTÁTICAS EXTERNAS. 207
7.5. VARIABLES REGISTRO: register. 209
7.6. EL MODO DE ALMACENAMIENTO A EMPLEARSE. 210
PROBLEMAS PROPUESTOS. 215
8. Arreglos. 231
8.1. ARREGLOS UNIDIMENSIONALES. 231
8.1.1. Inicialización de Arreglos. 235
8.1.2. Inicialización de Arreglos Indeterminados. 239
8.1.3. Punteros a Arreglos Unidimensionales. 240
8.1.4. Indexación de Punteros. 243
8.1.5. Paso de Arreglos Unidimensionales a Funciones. 243
8.2. ARREGLOS BIDIMENSIONALES. 250
8.2.1. Inicialización de un Arreglo Bidimensional 253
8.2.2. Inicialización de Arreglos Indeterminados Bidimensionales. 256
8.2.3. Punteros a Arreglos Bidimensionales. 256
8.2.4. Indexación de Punteros en Arreglos Bidimensionales. 259
8.2.5. Paso de Arreglos Bidimensionales a Funciones. 261
8.3. ARREGLOS DE PUNTEROS. 266
8.3.1. Paso de un Arreglo de Punteros a una Función. 267
8.4. ARREGLOS ASIGNADOS DINÁMICAMENTE. 268
8.5. ARREGLOS MULTIDIMENSIONALES. 275
PROBLEMAS PROPUESTOS. 277
9. Cadena de Caracteres. 303
9.1. VALORES DE CADENAS CONSTANTES. 303
9.2. DEFINICIÓN DE CADENAS DENTRO DE UN PROGRAMA.. 304
9.2.1. Cadenas Constantes Simbólicas. 304
9.2.2. Inicialización de Cadenas Implementadas con Arreglos. 305
9.2.3. Punteros de Tipo char como Cadenas. 307
9.2.4. Arreglo de Cadenas de Caracteres. 310
9.3. FUNCIONES ESTÁNDARES DE CADENAS DE CARACTERES. 319
9.4. ARGUMENTOS DE LA LÍNEA DE COMANDOS. 325
PROBLEMAS PROPUESTOS. 331
10. Estructuras. 345
10.1. ESTRUCTURAS. 345
10.1.1. Introducción. 345
10.1.2. Asignación de Estructuras. 349
10.1.3. Inicialización de una Estructura. 349
10.1.4. Arreglo de Estructuras. 349
10.1.5. Arreglos dentro de Estructuras. 353
10.1.6. Estructuras Anidadas. 354
10.1.7. Punteros a Estructuras. 355
10.1.8. Paso de Estructuras a Funciones. 360
10.1.8.1. Paso de Miembros de una Estructura a Funciones. 360
10.1.8.2. Paso de Estructuras Completas a Funciones. 361
10.1.8.3. Paso de la Dirección de la Estructura a Funciones. 363
10.1.8.4. Paso de un Arreglo de Estructuras a Funciones. 364
10.1.9. Nuevos formatos de datos. 370
10.2. CAMPOS DE BITS. 370
10.3. UNIONES. 377
10.4. ENUMERACIONES. 381
10.5. TIPOS DEFINIDOS POR EL USUARIO: typedef. 387
PROBLEMAS PROPUESTOS. 395
1.1 E/S por Archivos. 409
11.1. INTRODUCCIÓN.. 409
11.2. FLUJOS Y ARCHIVOS. 409
11.2.1. Flujos. 410
11.2.2. Archivos. 411
11.3. PUNTERO A ARCHIVO.. 412
11.4. APERTURA DE UN ARCHIVO: fopen(). 413
11.5. CIERRE DE UN ARCHIVO: ƒclose(). 414
11.6. ESCRITURA DE UN CARACTER: putc(). 415
11.7. LECTURA DE UN CARACTER: getc(). 416
11.8. FIN DE ARCHIVO: feof(). 419
11.9. INICIALIZAR EL INDICADOR DE POSICIÓN: rewind(). 421
11.10. ESCRITURA Y LECTURA DE CADENAS: fputs() y fgets(). 421
11.11. ELIMINACIÓN DE ARCHIVOS: remove(). 423
11.12. VACIAR EL CONTENIDO DE UN FLUJO: fflush(). 425
11.13. DETERMINACIÓN DE ERRORES: ferror(). 425
11.14. FLUJO DE DATOS BINARIOS. 428
11.14.1. Lectura y Escritura: fread() y ƒwrite( ). 428
11.14.2. E/S de Acceso Directo: fseek(). 432
11.14.3. Valor del Indicador de Posición del Archivo: ftell(). 436
11.15. ESCRITURA Y LECTURA DE CUALQUIER TIPO DE DATOS: fprintf() y fscanf() 437
11.16. CONEXIÓN ENTRE LA CONSOLA Y LA E/S DE ARCHIVOS. 441
11.16.1. Utilización de las Funciones de Archivos para Consola. 441
11.16.2. Utilización de las Funciones de Consola para Archivos. 441
PROBLEMAS PROPUESTOS. 451
12. El Preprocesador. 467
12.1. DIRECTIVA: #define. 467
12.2. DIRECTIVA: #error. 471
12.3. DIRECTIVA: #include. 472
12.4. DIRECTIVAS DE COMPILACIÓN CONDICIONAL. 473
12.4.1. Directivas: #if y #endif. 474
12.4.2. Directiva: #else. 474
12.4.3. Directiva: #elif. 475
12.4.4. Directivas: #ifdef e ifndef. 477
12.5. DIRECTIVA: #undef. 479
12.6. DIRECTIVA: #line. 479
12.7. DIRECTIVA: #pragma. 480
12.7.1. Directiva inline. 481
12.7.2. Directiva saveregs. 481
12.7.3. Directiva warn. 481
12.7.4. Directiva argsused. 482
12.7.5. Directiva exit. 482
12.7.6. Directiva startup. 482
12.7.7. Directiva option. 483
12.8. LOS OPERADORES DEL PREPROCESADOR # Y ##. 484
12.9. NOMBRES DE MACROS PREDEFINIDAS. 486
PROBLEMAS PROPUESTOS. 489
Apéndices. 493
A.Código ASCII para el PC. 495
B.Prototipos de las Funciones de Biblioteca del Lenguaje C más utilizados. 499
C.Índice de Programas. 517
Referencias Bibliográficas. 523