--- title: Appendix localeTitle: Apéndice --- # C: un apéndice Debido a que C es un lenguaje de tan bajo nivel, surgen muchos términos que no se encuentran en muchos otros idiomas. Aquí hay un apéndice para facilitar su comprensión. ## Compilacion La compilación es el proceso de tomar el código legible por humanos y convertirlo en código legible por máquina. Este proceso es realizado por un compilador. ## Compilador Un compilador es un programa que compila código, lo que significa que lo cambia de algo legible por humanos a algo legible por máquina. ## Depuración / depurador La depuración es el proceso de eliminar errores ("errores") de su código. Un depurador es una herramienta útil que lo hace más fácil. ## GNU + Linux GNU + Linux es el término técnicamente preciso para lo que comúnmente se conoce como "Linux". Linux es un núcleo, es un conjunto de programas que permiten que el software interactúe con el hardware. Cuando se combina con GNU, se convierte en un sistema operativo, que permite a una persona interactuar con él. ## GUI Interfaz gráfica del usuario. Una GUI le permitirá interactuar con un programa al señalar y hacer clic en lugar de tener que escribir comandos. ## Archivos de encabezado Los archivos de encabezado son archivos que contienen declaraciones de funciones que se definen en otros archivos de origen. Estos se suelen incluir en la parte superior de un archivo de origen. ## IDE Entorno de desarrollo integrado. Esto es principalmente un editor, pero incluye herramientas para verificar la sintaxis, dar formato al estilo del código, compilar y depurar un programa, lo que facilita la escritura del código. ## Humano legible El código legible por humanos es un código que puede ser leído por una persona, no en código binario o de máquina. ## Bibliotecas Las bibliotecas son conjuntos útiles de código que proporcionan más funciones y características en el idioma. ## Enlazador Una pieza de software que combina varios archivos de objetos (generalmente compilados con el código fuente de las bibliotecas) en un archivo ejecutable. ## Lenguaje de bajo nivel Un lenguaje de programación de bajo nivel contiene código binario o de ensamblaje que tiene poca o ninguna abstracción de las instrucciones a nivel de máquina. ## Codigo de maquina El código de máquina es el código que la máquina puede entender. Recuerda que las computadoras usan números, no inglés, para correr. ## Nueva línea Una nueva línea es lo que se imprime cuando presiona Entrar, y es un ejemplo de un carácter de espacio en blanco. También puede agregar una nueva línea a la salida de su programa incluyendo '\\ n' en su declaración de impresión. ## Archivo de objeto Un archivo que contiene el Código de Objeto (Código de Máquina). El archivo contiene una compilación de salida, lo que significa que contendrá código de máquina / código de ensamblaje. ## Enlazador Un programa de utilidad que tiene la capacidad de tomar archivos de objetos y crear un archivo ejecutable, un archivo de biblioteca u otro archivo de objetos. Otro nombre para el enlazador es un 'cargador'. ## Puntero Un puntero es una variable que contiene la dirección de memoria de otra variable. Las matrices, estructuras y funciones utilizan explícitamente los punteros que pueden ayudar a producir un código eficiente y fácil de leer. ## Espacio en blanco Los espacios en blanco son los caracteres que no ve cuando escribe, pero están ahí de todos modos. Por ejemplo, no puedes ver espacios, pero hay mucho aquí. Las nuevas líneas también son caracteres de espacios en blanco, como son las pestañas.