Curso de Programación en C

Curso gratis · Principiante · 8 unidades

Aprende C desde los tipos y el control de flujo hasta las funciones, los arrays, las cadenas, los punteros, la memoria dinámica, las estructuras y la entrada y salida de archivos, y escribe C más seguro con depuradores y sanitizadores. Después podrás escribir y depurar programas pequeños en C y razonar sobre la memoria.

Por Studeli

Empieza por la unidad 1

¿Es este curso de Programación en C para ti?

Para quién es

Empieza aquí si quieres entender cómo usan los programas la memoria y el hardware, o si tu asignatura (ingeniería, sistemas embebidos, sistemas operativos) usa C.

Lo que necesitas antes

Lo que aprenderás en 8 unidades

Cada unidad incluye las nueve herramientas de estudio

  • Guía de Estudio
  • Resumen
  • Lecciones Interactivas
  • Preguntas de Práctica
  • Flashcards
  • Explícalo
  • Términos Clave
  • Hoja de Repaso
  • Mapa Conceptual
  1. Compilar y ejecutar programas en C, declarar variables de los tipos básicos y controlar el flujo del programa con condiciones y bucles.

    6 objetivos de aprendizaje
    1. 1.Construir y ejecutar programas en C
    2. 2.Almacenar datos en variables de los tipos básicos
    3. 3.Mostrar la salida y leer la entrada con printf y scanf
    4. 4.Realizar cálculos con operadores y expresiones
    5. 5.Controlar el flujo del programa con condiciones y bucles
    6. 6.Reconocer y prevenir el desbordamiento de enteros
  2. Escribir funciones con prototipos, dividir programas en archivos fuente y de cabecera y construirlos con el preprocesador y make.

    5 objetivos de aprendizaje
    1. 1.Escribir, declarar y llamar a funciones
    2. 2.Controlar dónde son visibles las variables y cuánto tiempo existen
    3. 3.Utilizar el preprocesador de C
    4. 4.Dividir un programa en archivos fuente y de cabecera
    5. 5.Construir programas de varios archivos con make
  3. Trabajar con arrays y cadenas terminadas en nulo, procesar argumentos de la línea de comandos y prevenir accesos fuera de los límites.

    6 objetivos de aprendizaje
    1. 1.Almacenar y procesar colecciones de valores con arrays
    2. 2.Representar texto con caracteres y cadenas terminadas en nulo
    3. 3.Utilizar las funciones estándar de cadenas
    4. 4.Organizar datos en arrays multidimensionales
    5. 5.Procesar argumentos de la línea de comandos
    6. 6.Prevenir accesos fuera de los límites y desbordamientos de búfer
  4. Utilizar punteros para pasar datos por referencia, recorrer arrays mediante aritmética de punteros y explicar cómo se distribuyen las variables en memoria.

    5 objetivos de aprendizaje
    1. 1.Comprender la memoria, las direcciones y las variables de tipo puntero
    2. 2.Utilizar punteros para compartir datos con funciones
    3. 3.Recorrer arrays mediante aritmética de punteros
    4. 4.Trabajar con punteros a punteros
    5. 5.Utilizar punteros a funciones y funciones de devolución de llamada
  5. Reservar y liberar memoria del montículo, cambiar el tamaño de los búferes y detectar fugas y accesos no válidos con herramientas de comprobación de memoria.

    5 objetivos de aprendizaje
    1. 1.Explicar dónde almacena sus datos un programa en C
    2. 2.Reservar y liberar memoria del montículo
    3. 3.Cambiar el tamaño de los búferes con realloc
    4. 4.Reconocer y prevenir errores de memoria
    5. 5.Detectar errores de memoria con Valgrind y sanitizadores
  6. Definir estructuras y enumeraciones y construir listas enlazadas, pilas, colas, árboles y tablas de dispersión a partir de nodos reservados dinámicamente.

    6 objetivos de aprendizaje
    1. 1.Agrupar datos relacionados mediante estructuras
    2. 2.Dar nombre a opciones con enumeraciones y compartir almacenamiento con uniones
    3. 3.Construir y mantener listas enlazadas
    4. 4.Implementar pilas y colas
    5. 5.Construir y recorrer árboles binarios
    6. 6.Almacenar y buscar claves en tablas de dispersión
  7. Leer y escribir archivos de texto y binarios con la biblioteca estándar de entrada y salida y gestionar los errores de forma robusta.

    5 objetivos de aprendizaje
    1. 1.Abrir archivos como flujos y conectar los programas con su entrada y su salida
    2. 2.Leer y escribir archivos de texto
    3. 3.Guardar y cargar datos en archivos binarios
    4. 4.Desplazarse a cualquier posición de un archivo
    5. 5.Detectar errores de archivo, informar de ellos y recuperarse
  8. Depurar programas en C con un depurador y las advertencias del compilador, reconocer el comportamiento indefinido y aplicar prácticas que hacen más seguro el código C.

    5 objetivos de aprendizaje
    1. 1.Dejar que el compilador detecte problemas por ti
    2. 2.Detectar y corregir defectos de programación con un depurador
    3. 3.Reconocer y evitar el comportamiento indefinido
    4. 4.Detectar errores en tiempo de ejecución con aserciones y sanitizadores
    5. 5.Escribir código C más seguro

Qué estudiar después

Más cursos de Programación
Siguiente: Sistemas operativos (Intermedio)

Empieza aquí si programas en C (o te animas a leer ejemplos en C) y quieres entender los procesos, la memoria, la concurrencia y los sistemas de archivos desde el punto de vista del sistema operativo.

Crea tus propios Materiales de Estudio

Convierte tus notas, diapositivas y documentos en Guías de Estudio, Preguntas de Práctica, Flashcards y 6 herramientas más.

Comenzar