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 €
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

Esto no Es Inteligencia

Esto no Es Inteligencia

Floridi,Luciano

La inteligencia artificial no piensa, no es inteligente: actúa. Comprender esta diferencia fundamental es la clave para afrontar con conciencia los desafíos de una tecnología que está transformando nuestro presente y nuestras vidas, y para imaginar el futuro de nuestras sociedades. Esta es la tesis que defiende Luciano Floridi, uno de los principales filósofos contemporáneos y...

23,94 €

Competencias Digitales Avanzadas

Competencias Digitales Avanzadas

Mas Alique, Pedro

Este libro desarrolla el Módulo Formativo de Competencias Digitales Avanzadas (Código: IFCT46), con una duración de 60 horas. Pertenece a la familia profesional de Informática y Comunicaciones, y está asociado al área profesional de Sistemas y Telemática. La estructura organizativa de sus contenidos corresponde fielmente a la establecida por la normativa vigente. Las unidades ...

14,42 €

Lo que Preguntamos a Google

Lo que Preguntamos a Google

Rogers, Simon

¿Alguna vez te has preguntado qué pasa por la mente de otras personas, como preguntas absurdas, inquietudes muy íntimas, esperanzas y sueños?En 'Lo que preguntamos a Google', Simon Rogers analiza las conclusiones extraídas del mayor conjunto de datos del mundo. Es una instantánea épica de nuestro cerebro colectivo con dos décadas de historia que sigue creciendo. Lo que revela s...

23,99 €

El Reto de Ser Humanos

El Reto de Ser Humanos

Bona García, César

"Nunca habíamos vivido una revolución tecnológica tan acelerada y, sin embargo, el gran desafío de nuestro tiempo no está en las máquinas, está en nosotros. Mientras la inteligencia artificial avanza, corremos el riesgo de perder aquello que nos hace únicos: la capacidad de prestar atención, pensar con criterio, crear, comunicarnos, convivir y liderar nuestras propias vidas. ...

22,02 €

Tsunami

Tsunami

Vázquez, Pablo

En los últimos años, más de 10.000 personas han pasado por los cursos de inteligencia artificial de Pablo Vázquez. Personas con perfiles muy diversos, e inquietudes muy similares: «No sé por dónde empezar». «No sé si mi trabajo está en riesgo». «Sé que debería estar haciendo algo, pero no sé el qué». «Tengo hijos, equipo, familia debería poder orientarlos, y no puedo». Es norma...

21,06 €

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 €

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 €