Saltar al contenido principal
C/C++ Curso de Programacion

C/C++ Curso de Programacion

Ceballos Sierra, Fco. Javier

C es uno de los lenguajes de programación más populares. Permite realizar una programación estructurada sin límite a la creatividad del programador; además, los compiladores C tienen la ventaja de producir programas reducidos y muy rápidos en su ejecución. Por ello, muchos paquetes de software están escritos en C. Puesto que C++ fue desarrollado a partir del lenguaje de program...

Editorial:
Rama, Editorial
Año de edición:
2020
Materia:
Informatica
ISBN:
978-84-9964-812-5
Páginas:
784
Encuadernación:
Rústica
Colección:
INFORMATICA
40,29 €
IVA incluido
Añadir a favoritos Consulta disponibilidad

Sinopsis

C es uno de los lenguajes de programación más populares. Permite realizar una programación estructurada sin límite a la creatividad del programador; además, los compiladores C tienen la ventaja de producir programas reducidos y muy rápidos en su ejecución. Por ello, muchos paquetes de software están escritos en C. Puesto que C++ fue desarrollado a partir del lenguaje de programación C, con pocas excepciones incluye a C, de ahí el título de este libro. Esta parte de C incluida en C++ es conocida como C? y podría compilarse como C++ sin problemas. No obstante, cuando se utiliza C++ para lo que fue pensado, esto es, para realizar una programación orientada a objetos, los conocimientos nuevos que hay que adquirir son cuantiosos. Este libro es el primero de una colección de tres: 1. C/C++: Curso de programación 2. Programación orientada a objetos con C++ 3. Enciclopedia de C++ que cubren el camino que hay que recorrer para llegar a desarrollar aplicaciones orientadas a objetos. El libro tercero incluye a los dos anteriores pero con un nuevo enfoque, ya que está basado exclusivamente en la biblioteca de C++. C/C++: Curso de programación es un libro: ? Totalmente actualizado al estándar ISO/IEC 9899:2011, relativo al lenguaje C estándar (C11). ? Con ejemplos claros y sencillos, fáciles de entender, que ilustran los fundamentos de la programación C. ? Que le permitirá aprender lógica de programación. ? Que le enseñará a trabajar con estructuras estáticas y dinámicas de datos y con archivos, y a utilizar algoritmos de uso común. ? Con el que adquirirá unos elevados conocimientos en esta materia. ? Con el que aprenderá a desarrollar aplicaciones. ? Y con el que adquirirá la base necesaria para pasar a la programación orientada a objetos con C++. Incluye material adicional con todos los ejemplos realizados y con los URL del software necesario para que el lector pueda reproducirlos durante el estudio.

Índice

CONTENIDO PRÓLOGO CAPÍTULO 1. FASES EN EL DESARROLLO DE UN PROGRAMA QUÉ ES UN PROGRAMA LENGUAJES DE PROGRAMACIÓN Compiladores Intérpretes ¿QUÉ ES C? HISTORIA DEL LENGUAJE C Lenguaje C++ REALIZACIÓN DE UN PROGRAMA EN C Edición de un programa ¿Qué hace este programa? Guardar el programa escrito en el disco Compilar y ejecutar el programa Biblioteca de funciones Guardar el programa ejecutable en el disco Depurar un programa UN AVANCE SOBRE LA PROGRAMACIÓN CON C Entrada y salida Sentencias de control Funciones Matrices EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS VIII C/C++: CURSO DE PROGRAMACIÓN CAPÍTULO 2. ELEMENTOS DEL LENGUAJE C PRESENTACIÓN DE LA SINTAXIS DE C CARACTERES DE C Letras, dígitos y carácter de subrayado Espacios en blanco Caracteres especiales y signos de puntuación Secuencias de escape TIPOS DE DATOS Tipos primitivos char bool short int long long long enum Creación de una enumeración float double long double Ejemplo: tipos de datos Otros tipos enteros Tipos complejo e imaginario Tipos derivados SINÓNIMOS DE UN TIPO LITERALES Literales enteros Literales reales Literales de un solo carácter Literales de cadenas de caracteres IDENTIFICADORES PALABRAS CLAVE COMENTARIOS DECLARACIÓN DE CONSTANTES SIMBÓLICAS Constantes C++ ¿Por qué utilizar constantes? DECLARACIÓN DE UNA VARIABLE Iniciación de una variable EXPRESIONES NUMÉRICAS OPERADORES Operadores aritméticos Operadores de relación CONTENIDO IX Operadores lógicos Operadores unitarios Operadores a nivel de bits Operadores de asignación Operador condicional Otros operadores Operador sizeof Operador coma Operador dirección-de Operador de indirección PRIORIDAD Y ORDEN DE EVALUACIÓN CONVERSIÓN ENTRE TIPOS DE DATOS EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS CAPÍTULO 3. ESTRUCTURA DE UN PROGRAMA ESTRUCTURA DE UN PROGRAMA C Directrices para el preprocesador Directriz de inclusión Directriz de sustitución Definiciones y declaraciones Sentencia simple Sentencia compuesta o bloque Funciones Declaración de una función Definición de una función Llamada a una función Función main Un ejemplo PASANDO ARGUMENTOS A LAS FUNCIONES PROGRAMA C FORMADO POR MÚLTIPLES ARCHIVOS ÁMBITO DE UNA VARIABLE Variables globales y locales CLASES DE ALMACENAMIENTO DE UNA VARIABLE. Calificación de variables globales Calificación de variables locales Calificación de funciones EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS X C/C++: CURSO DE PROGRAMACIÓN CAPÍTULO 4. ENTRADA Y SALIDA ESTÁNDAR DATOS NUMÉRICOS Y CADENAS DE CARACTERES FLUJOS DE E/S ESTÁNDAR SALIDA CON FORMATO Infinito y NaN Macros para código independiente de la plataforma ENTRADA CON FORMATO CARÁCTER FIN DE ARCHIVO CARÁCTER
LEER UN CARÁCTER DE LA ENTRADA ESTÁNDAR LIMPIAR EL BUFFER DE LA ENTRADA ESTÁNDAR ESCRIBIR UN CARÁCTER EN LA SALIDA ESTÁNDAR LEER UNA CADENA DE CARACTERES VALIDAR UN DATO DE ENTRADA REUTILIZAR CÓDIGO LIMPIAR LA PANTALLA EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS CAPÍTULO 5. SENTENCIAS DE CONTROL SENTENCIA if ANIDAMIENTO DE SENTENCIAS if ESTRUCTURA else if SENTENCIA switch SENTENCIA while Bucles anidados SENTENCIA do while SENTENCIA for SENTENCIA break SENTENCIA continue SENTENCIA goto EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS CAPÍTULO 6. TIPOS ESTRUCTURADOS DE DATOS INTRODUCCIÓN A LAS MATRICES MATRICES NUMÉRICAS UNIDIMENSIONALES Definir una matriz Acceder a los elementos de una matriz CONTENIDO XI Trabajar con matrices unidimensionales Matrices de longitud variable Iniciar una matriz Matrices asociativas CADENAS DE CARACTERES Leer y escribir una cadena de caracteres Funciones gets_s y fgets Función puts Trabajar con cadenas de caracteres Funciones de la biblioteca de C TIPO Y TAMAÑO DE UNA MATRIZ MATRICES MULTIDIMENSIONALES Matrices numéricas multidimensionales Matrices de cadenas de caracteres COPIAR MATRICES TRABAJAR CON BLOQUES DE BYTES ESTRUCTURAS Acceso a los miembros de una estructura Crear una estructura Definir variables de un tipo de estructura Miembros que son estructuras Operaciones con estructuras Matrices de estructuras UNIONES Estructuras variables CAMPOS DE BITS EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS CAPÍTULO 7. PUNTEROS CREACIÓN DE PUNTEROS Operadores Importancia del tipo del objeto al que se apunta OPERACIONES CON PUNTEROS Operación de asignación Operaciones aritméticas Comparación de punteros Punteros genéricos Puntero nulo Calificadores PUNTEROS Y MATRICES XII C/C++: CURSO DE PROGRAMACIÓN Punteros a cadenas de caracteres MATRICES DE PUNTEROS Punteros a punteros Matriz de punteros a cadenas de caracteres Ordenar matrices de cadenas de caracteres ASIGNACIÓN DINÁMICA DE MEMORIA Funciones para administrar dinámicamente la memoria malloc free Reasignar un bloque de memoria MATRICES DINÁMICAS Matrices dinámicas numéricas Matrices dinámicas de una dimensión Matrices dinámicas de dos dimensiones Matrices dinámicas de cadenas de caracteres PUNTEROS A ESTRUCTURAS PUNTEROS COMO PARÁMETROS EN FUNCIONES DECLARACIONES COMPLEJAS EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS CAPÍTULO 8. MÁS SOBRE FUNCIONES PASAR UNA MATRIZ COMO ARGUMENTO A UNA FUNCIÓN Matrices estáticas Matrices dinámicas PASAR UN PUNTERO COMO ARGUMENTO A UNA FUNCIÓN PASAR UNA ESTRUCTURA A UNA FUNCIÓN DATOS RETORNADOS POR UNA FUNCIÓN Retornar una copia de los datos Retornar un puntero al bloque de datos. Retornar la dirección de una variable declarada static ARGUMENTOS EN LA LÍNEA DE ÓRDENES REDIRECCIÓN DE LA ENTRADA Y DE LA SALIDA FUNCIONES EN LÍNEA FUNCIONES RECURSIVAS PUNTEROS A FUNCIONES EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS CONTENIDO XIII CAPÍTULO 9. TRABAJAR CON FICHEROS VISIÓN GENERAL DE LOS FLUJOS DE E/S VISIÓN GENERAL DE UN ARCHIVO ABRIR UN ARCHIVO fopen freopen CERRAR UN ARCHIVO fclose MANIPULACIÓN DE ERRORES ferror clearerr feof perror POSICIÓN DEL PUNTERO DE L/E ftell fseek rewind E/S CARÁCTER A CARÁCTER fputc fgetc E/S DE CADENAS DE CARACTERES fputs fgets ENTRADA/SALIDA CON FORMATO fprintf fscanf E/S UTILIZANDO REGISTROS fwrite fread ABRIENDO ARCHIVOS PARA ACCESO SECUENCIAL Un ejemplo de acceso secuencial ESCRIBIR DATOS EN UNA IMPRESORA Escribir en una impresora USB CONTROL DEL BUFFER ASOCIADO CON UN FLUJO. setvbuf fflush ARCHIVOS TEMPORALES tmpfile ABRIENDO ARCHIVOS PARA ACCESO ALEATORIO EJERCICIOS RESUELTOS EJERCICIOS PROPUESTOS XIV C/C++: CURSO DE PROGRAMACIÓN CAPÍTULO 10. EL PREPROCESADOR DE C DIRECTRIZ #define Macros predefinidas Funciones en línea frente a macros El operador # El operador ## DIRECTRIZ #undef DIRECTRIZ #include COMPILACIÓN CONDICIONAL Operador defined DIRECTRIZ #pragma CONSTANTE DEFINIDA EN LA ORDEN DE COMPILACIÓN DIRECTRICES #ifdef e #ifndef DIRECTRIZ

Artículos relacionados

Generacion Ia

Generacion Ia

Lazaro Avila, Maria

Al debate sobre cómo, cuándo y por qué dar acceso (o no) a niños y adolescentes a las pantallas, móviles y redes sociales, se añade ahora otro ingrediente digital: la inteligencia artificial. En realidad, la IA no es un fenómeno nuevo: llevamos conviviendo con ella desde hace años, muchas veces de forma invisible. Ahora, la «democratización» de aplicaciones y herrami...

22,07 €

Lanzate a la Ia. Despierta Tus Superpoderes

Lanzate a la Ia. Despierta Tus Superpoderes

Fuentes Calle, Arturo

Tus superpoderes ya existen. Solo te falta dar el primer paso. Si todavía miras la IA con distancia, no estás solo . A muchos les pasa: sienten curiosidad, pero también respeto, dudas o la sensación de 'esto no es para mí'. La IA no es una moda pasajera: es la siguiente etapa natural de la digitalización que ya transformó cómo trabajamos, aprendemos y nos comunicamos. M...

19,13 €

Level Up! Guia para Ser un Gran Diseñador de Videojuegos

Level Up! Guia para Ser un Gran Diseñador de Videojuegos

Rogers, Scott

¿Quieres aprender a diseñar lo último en videojuegos? ¿Necesitas consejos para mejorar el diseño de tu juego? ¡Prepárate para subir de nivel con Level Up! Scott Rogers, el diseñador de videojuegos de éxito como Pac-Man World TM, God of War TM, y las series de Maximo y de Bob Esponja, comparte con nosotros el conocimiento y la experiencia que ha acumulado durante años sobre cómo...

43,27 €

Ia para Principiantes. La Guía Definitiva

Ia para Principiantes. La Guía Definitiva

Witzke,Kasper

El rápido avance de la Inteligencia Artificial está cambiando las industrias y redefiniendo lo que significa tener éxito en la era moderna. Desde el tratamiento de la salud hasta las finanzas, pasando por la educación y el entretenimiento, la IA está impulsando la innovación y la eficiencia a un ritmo sin precedentes. Como resultado, comprender la IA se ha convertido en una nec...

17,21 €

Mierdificación

Mierdificación

Cory Doctorow

Estamos viviendo el Enmierdoceno, la Gran Enmierdación, una época en la que los servicios que nos importan se están convirtiendo en enormes montones de mierda. Cuando Cory Doctorow acuñó el término enshittification (enmierdación), estaba haciendo un diagnóstico sobre el estado del mundo digital y cómo afecta a nuestras vidas. Como palabra, captura la esencia de un mundo que emp...

24,04 €

Ia: Desafíos y Oportunidades

Ia: Desafíos y Oportunidades

Jesús Fernando López Fidalgo

Este libro acerca los conceptos clave de la inteligencia artificial con un lenguaje claro y accesible a cualquier lector, a la vez que invita a reflexionar sobre los desafíos ?presentes y futuros? que la creación y el uso de la IA planteando en nuestra vida cotidiana. La obra se adentra en el pasado, presente y futuro de la IA están en tres capítulos que constituyen tres mirada...

14,33 €

Otros libros del autor

(Ifct011Po) Programacion. Net

(Ifct011Po) Programacion. Net

Ceballos Sierra, Fco. Javier

33,56 €

(Ifct087Po) Programacion en Visual C++

(Ifct087Po) Programacion en Visual C++

Ceballos Sierra, Fco. Javier

57,60 €

Enciclopedia de Microsoft Visual C# 4ªed. 2013

Enciclopedia de Microsoft Visual C# 4ªed. 2013

Ceballos Sierra, Fco. Javier

C# evolucionó a partir del lenguaje C/C++ incorporando numerosas instrucciones, funciones y palabras clave directamente relacionadas con la interfaz gráfica de Windows. Actualmente ofrece capacidades para realizar un diseño completamente orientado a objetos y acceso directo a Microsoft .NET Framework, entorno que proporciona un amplio conjunto de interfaces de programación de a...

57,60 €

Enciclopedia del Lenguaje C++

Enciclopedia del Lenguaje C++

Ceballos Sierra, Fco. Javier

La programación orientada a objetos (POO) es una de las técnicas más modernas de desarrollo que trata de disminuir el coste del software, aumentando la eficiencia y reduciendo el tiempo de espera. Por eso, donde la POO toma verdadera ventaja es en poder compartir y reutilizar el código. Sin embargo, no debe pensarse que esta forma de programación resuelve todos los problemas d...

47,98 €