Laboratorio de Circuitos Digitales y
    Sistemas Embebidos

  • Introducción al Lenguaje C
    • Características del lenguaje
      • Paradigma procedural
      • Minimalidad
      • Versatilidad, a un precio
      • Portabilidad
      • Biblioteca Standard
    • Evolución del lenguaje
    • El ciclo de compilación
      • Compilador
      • Vinculador, linkeditor o linker
      • Bibliotecario
    • Un primer ejemplo
      • Estructura del programa
      • Compilación del programa
      • El comando make
    • Mapa de memoria de un programa
    • Ejercicios
  • El preprocesador
    • Directivas de preprocesador
      • Símbolos y macros
      • Headers
    • Definición de símbolos
    • Definición de macros
      • Macros vs. funciones
    • Compilación condicional
    • Observaciones
    • Ejercicios
  • Tipos de datos y expresiones
    • Declaración de variables
    • Tamaños de los objetos de datos
    • Operaciones con distintos tipos
      • Truncamiento en asignaciones
      • Promoción automática de expresiones
      • Operador cast
      • Reglas de promoción en expresiones
    • Observaciones
    • Una herramienta: printf()
    • Ejercicios
  • Constantes
    • Constantes numéricas
      • Constantes enteras
      • Constantes long
      • Constantes unsigned
      • Constantes de punto flotante
    • Constantes string
      • El cero final
    • Constantes de carácter
      • Constantes de carácter en strings
    • Constantes enumeradas
    • Ejercicios
  • Propiedades de las variables
    • Alcance de las variables
    • Vida de las variables
    • Clases de almacenamiento
      • Variables y mapa de memoria
    • Liga
    • Declaraciones y definiciones
    • Modificadores especiales
    • Ejercicios
  • Operadores
    • Operadores aritméticos
      • Abreviaturas
    • Operadores de relación
    • Operadores lógicos
      • Constantes lógicas
    • Operadores de bits
    • Operadores especiales
      • Inicialización
      • Asignación
      • Operador ternario
    • Precedencia y orden de evaluación
    • Resumen
    • Ejercicios
  • Estructuras de control
    • Estructura alternativa
    • Estructuras repetitivas
      • Estructura while
      • Estructura do-while
      • Estructura for
    • Estructura de selección
    • Transferencia incondicional
      • Sentencia continue
      • Sentencia break
      • Sentencia goto
      • Sentencia return
    • Observaciones
    • Ejercicios
  • Funciones
    • Declaración y definición de funciones
    • Prototipos de funciones
    • Redeclaración de funciones
    • Recursividad
    • Ejercicios
  • Variables estructuradas
    • Arreglos
      • Inicialización de arreglos
      • Errores frecuentes con arreglos
    • Arreglos multidimensionales
    • Estructuras y uniones
      • Estructuras
      • Uniones
      • Campos de bits
    • Ejercicios
  • Apuntadores y Direcciones
    • Operadores especiales
    • Aritmética de punteros
      • Asignación entre punteros
      • Suma de enteros a punteros
      • Resta de punteros
    • Punteros y arreglos
    • Punteros y cadenas de texto
    • Pasaje por referencia
    • Punteros y argumentos de funciones
    • Ejercicios
    • Errores más frecuentes
      • Punteros sin inicializar
      • Confundir punteros con arreglos
      • No analizar el nivel de indirección
    • Arreglos de punteros
    • Estructuras referenciadas por punteros
    • Estructuras de datos recursivas
    • Construcción de tipos
    • Asignación dinámica de memoria
    • Punteros a funciones
    • Aplicación de punteros a funciones
    • Punteros a punteros
    • Una herramienta: gets()
    • Ejercicios
  • Entrada/Salida Standard
    • Funciones de E/S Standard
    • E/S standard de caracteres
    • E/S standard de líneas
    • E/S standard con formato
    • E/S standard sobre strings
  • E/S sobre archivos
    • Estándares ANSI y POSIX
    • Funciones ANSI C de E/S sobre archivos
    • Funciones ANSI C de caracteres sobre archivos
    • Funciones ANSI C de líneas sobre archivos
    • Funciones ANSI C con formato sobre archivos
    • Funciones ANSI C de acceso directo
      • Constantes de posicionamiento
      • Sincronización de E/S
    • Resumen de funciones ANSI C de E/S
    • Funciones POSIX de E/S sobre archivos
      • Apertura de archivos
      • Posicionamiento en archivos
    • Ejercicios
  • Comunicación con el ambiente
    • Redirección y piping
    • Variables de ambiente
    • Argumentos de ejecución
    • Salida del programa
    • Opciones
    • Ejercicios
  • La Biblioteca Standard
    • Cadenas o strings
    • Listas de argumentos variables
    • Tratamiento de errores
    • Funciones de fecha y hora
    • Funciones matemáticas
    • Funciones utilitarias
    • Clasificación de caracteres
    • Ejercicios
    • Ejercicios avanzados