Hola y bienvenido.
En esta conferencia, quiero hablar sobre la declaración de inclusión.
Y así de nuevo, desde nuestro primer desafíe nuestra
primera exposición al código c y al programa c, debería haber notó esta declaración de inclusión.
Está en la línea ocho aquí en este ejemplo, y este
es nuestro programa básico c básico del proyecto de desafío de ejemplo.
Ves que está incluido.
Y ahora porque hemos aprendido sobre el preprocesador, sabemos
que es una directiva de preprocesador porque tenemos ese símbolo de libra.
Cualquier cosa que comience con el símbolo de libra
antes de cualquier otro espacio es un comando de preprocesador, una directiva de preprocesador.
Y entonces sabemos que la línea ocho incluye La palabra clave especial con el
símbolo de libra es una directiva preprocesada.
Ahora quiero explicarte ¿Qué está haciendo exactamente esto?
¿Qué significa esto?
Nuevamente, este es un concepto básico en c del que tenemos que hablar desde el
principio porque todos los programas de c lo tienen.
Es muy similar si estás familiarizado con java con la declaración de importación.
Pero vamos a describir esto en detalles ahora en algunas diapositivas, pero lo
verá en todos sus programas c.
Entonces, la declaración de inclusión es una directiva de preprocesador debido a ese
símbolo de libra lo sabemos.
Y lo llamamos una declaración como opuesto a una directiva sin una razón
real solo porque es común use ese término en el lenguaje de programación,
pero técnicamente es una directiva.
Y nuevamente, el ejemplo en nuestro El programa estaba incluyendo este
algo en estos corchetes angulares.
Vemos que esto incluye la palabra clave y luego vemos este stdio. h.
Y este es un ejemplo.
Este es el que nosotros utilizado en nuestro primer desafío.
No es estrictamente parte del programa ejecutable.
Sin embargo, el programa no funcionará sin él.
Sabemos que es un directiva preprocesada.
Realmente no hace mucho como en cuanto a cómo funciona el programa.
Solo le dice al compilador antes de que se ejecute, oye, estábamos haciendo algo aquí
con este include.
Y si no lo tienes allí, el compilador se quejará
y arrojará errores.
Entonces lo necesitas.
El símbolo de libra indica que es una directiva de preprocesamiento.
Hablamos de eso, que es una instrucción de su compilador para
hacer algo antes compilando el código fuente.
Hay muchos preprocesos directivas, y dimos algunos ejemplos en nuestra
conferencia de preprocesamiento.
Hablamos de constantes declaraciones definidas.
Hablamos de si y si no y así sucesivamente diferentes de las
directivas de preprocesamiento condicional.
Pero este es uno de los más los de uso común, el include.
Y de nuevo, estas directivas pueden estar en cualquier parte de su código fuente, pero generalmente están
en la parte superior.
En el incluir específicamente, este incluir la directiva de preprocesador es muy similar a
la declaración de importación en Java si está familiarizado con eso.
Pero ¿qué significa eso?
Entonces, en el ejemplo anterior aquí con incluye el símbolo de libra stdio. h, esto le dice a tu
compilador para incluir algunos de los contenidos de su programa en
el archivo con ese nombre.
Entonces hay un nombre de archivo que existe en algún lugar llamado stdio. h.
Y lo que dice la directiva es mi programa actual que contiene
la directiva necesita algunos de los contenidos dentro de este archivo para compilar.
Así que específicamente el include La directiva tendrá nombres de archivo que
terminen en. h.
Estos se denominan archivos de encabezado.
Se llaman archivos de encabezado porque normalmente se incluyen en
la parte superior del archivo fuente.
Es una de las primeras cosas que haces es que incluye todos sus archivos de encabezado.
Y de nuevo, este preprocesador La directiva
dice que quiero algunos de los contenidos dentro de ese archivo.
No es un archivo c.
Sabemos que archivos que terminan en un . c son archivos fuente de c.
Entonces el . h tiene que ser algo más, y lo es.
Es un archivo de encabezado.
Y tiene eso. h extensión.
Así que hablemos de qué es un archivo de encabezado.
Los archivos de encabezado definen información sobre algunas de las funciones
que proporciona ese archivo.
Y te daré un ejemplo del contenido en un archivo de encabezado.
Pero antes que nada, están definiendo algunos información sobre algún código fuente.
Y específicamente para nuestro ejemplo con eso incluido stdio. h, esto incluye un encabezado de
biblioteca estándar de c.
Así que recuerda, te dije usted acerca de las bibliotecas.
Las bibliotecas son solo adicionales funcionalidad que ya está escrita para usted
yc que usted puede incluir en su programa para que no tenga
que volver a escribirlo.
De nuevo, los ejemplos de bibliotecas son leer y escribir en la consola, mostrar
la salida, leer y escribir archivos, todo tipo de cosas diferentes haciendo
código de red, muchas muchas bibliotecas diferentes por ahí.
Pero stdio. h es una biblioteca estándar de c.
Lo que eso significa es que viene con el
lenguaje de programación c y proporciona funcionalidad para mostrar salida entre muchas otras cosas.
Entonces stdio. h, es un archivo de encabezado.
Define alguna funcionalidad que el compilador debe comprenderlo antes
de poder usarlo.
Así que específicamente stdio. h contiene información sobre printf.
Y entonces vamos a hablar sobre printf en la
próxima lección que nos ayuda a mostrar la salida, pero printf es una función
que está en stdio. h archivo de encabezado.
Y tambien contiene muchas otras funciones.
Stdio es la abreviatura de salida de entrada estándar.
Entonces esta biblioteca está describiendo contiene funcionalidad para manejar la entrada
y la salida.
Y este es el concepto de usar un nombre significativo.
No queremos llamar a eso biblioteca Jason o Jason. h porque eso no
tiene sentido.
Usamos stdio. h porque está diciendo io estándar.
Entrada y salida estándar, y sabemos que, esa biblioteca contiene todo tipo de funciones
para la importación alfa.
Específicamente funcionalidad que que queremos usar en nuestro programa de desafío, nuestro primer
programa de ejemplo si queremos usar esta función llamada printf,
que nos permite mostrar la salida a la consola.
Y así, al incluir este stdio. h en nuestro código fuente, estamos diciendo para usar esta
funcionalidad de este printf, necesitamos incluir este archivo.
Entonces, los disparos de encabezado van a especificar información que el
compilador utiliza para integrar y utilizar cualquier reutilización código, cualquier función dentro de un programa.
Entonces vas a usar muchos muchos archivos de encabezado de biblioteca estándar
diferentes y hay muchos por ahí, stdio. h es solo uno.
De nuevo hay archivos de encabezado que definen funcionalidad o prototipos de
funciones para código de red, código de socket.
De nuevo, vamos a pasar por una muchos de ellos, cadenas para palabras completas
y cosas así.
Pero además del estándar c biblioteca en las diferentes bibliotecas que vienen con la programación
c idioma, también puede crear sus propios archivos de encabezado,
y estará crear sus propios archivos de encabezado porque los archivos de
encabezado permiten la reutilización del software.
Te permiten reutilizar funcionalidad escrita en c.
Así que en algún lugar los diseñadores de c escribieron todo este código c que lee y
escribe datos y maneja la entrada y salida.
No quieren este nuevo programador de c tener que escribir el suyo.
Entonces ellos van a escribir para
ti, y te dirán que puedes usarlo.
Y la forma en que lo usas es incluye el archivo de encabezado.
Y usted, como su propio desarrollador, puede escribir código en un programa grande, grande,
miles de archivos que desea que se utilice en otros archivos.
Y entonces escribirás sus propios archivos de encabezado.
Y los archivos de encabezado, nuevamente, van a
definir prototipos de funciones, diferentes constantes, todo tipo de cosas
diferentes que ayudarán a otro archivo que puede utilizar su programa, ayudará
a compilar su programa.
Entonces es una reutilización de software técnica esencialmente.
Entonces vamos a incluir esto io estándar. archivo de encabezado en un programa
siempre que necesitemos usar la función printf de la
biblioteca estándar, es necesaria.
Si no incluiste no se compilará.
Así que siempre que estés usando cierta funcionalidad, tienes
que usar el include.
La sintaxis en cuanto a archivos de encabezado vaya, distinguen entre mayúsculas y minúsculas.
Medios de sensibilidad a mayúsculas y minúsculas mayúsculas o minúsculas.
Importa si tu hacer uno o el otro.
Así que siempre deberías escríbalos en minúsculas.
Sus archivos de encabezado deben estar en minúsculas porque, de lo
contrario, ciertos sistemas pueden interpretar tienen un significado diferente.
Hay dos formas de incluir archivos de encabezado en un programa.
Puedes usar corchetes angulares como libra incluyen a
Jason. h y corchetes angulares.
Y lo que esto suele significar es que decirle al preprocesador que busque
un archivo en algún tipo de directorio del sistema.
Suele ser una biblioteca estándar que viene con el lenguaje de programación c.
También puede utilizar comillas dobles.
Las comillas dobles generalmente significan que significa es un archivo de encabezado definido por el usuario.
Es uno que creaste como desarrollador que no vino
con el lenguaje de programación c pero desea tener ese encabezado
allí porque desea reutilizar algún código.
Entonces también va a decir busque en el directorio actual.
Cada compilador de c que cumple según el estándar C11 tendrá
un conjunto de encabezado estándar archivos suministrados con él.
Estos son solo archivos de encabezado que representan bibliotecas.
Funcionalidad C que viene con el idioma.
Cuando use la directiva include, Es una práctica común usar las otras directivas del preprocesador si no es
para buscar y definir, de modo que no incluya el archivo más
de una vez.
Esto es por eficiencia.
Entonces, si su programa usa printf, por ejemplo, mostrando la salida
en la pantalla, quiere decirle a su programa, oye, necesito incluir esta
funcionalidad adicional en la biblioteca estándar.
No quieres decírselo incluirlo más de una vez porque el preprocesador
hará muchos cosas que no necesita hacer.
Así que normalmente lo harás utilizar si no está definido.
Entonces verás algo de esto en algunos de los ejemplos que
proporciono donde envuelvo las inclusiones en estos si no define ni define declaraciones.
He aquí un ejemplo de archivo de encabezado en su contenido.
Es posible que tenga algún archivo de encabezado, tiene algunos comentarios,
podría tener otras cosas.
Tiene principalmente función prototipos en él, pero puede
tener constantes, puede tener typedefs.
Estos son algunos conceptos que todavía no entendemos.
Pero solo estoy tratando de ilustrar tratando de ayudarlo a comprender
que contiene muchas cosas diferentes.
Pero de nuevo para nuestro stdio. h, hay algo allí llamado printf que define la función printf de
modo que cuando enlazamos podamos encontrar el código de
implementación para eso.
Así que aquí hay algunos prototipos de funciones.
Los prototipos de funciones son solo nombres de funciones.
Sabemos que es una función con suerte, a estas alturas, es
solo una forma de agrupar el código.
Hablaremos de funciones con mucho más detalle más adelante.
Entonces, un archivo de encabezado puede incluir muchas, muchas cosas diferentes.
Puede incluir directivas definidas, constantes, declaraciones de estructura.
Esta es nuevamente una forma de agrupar diferentes variables, agrupar datos diferentes.
Las declaraciones typedef tienen que ver con los tipos de datos.
Hablaremos más sobre eso.
Pero los prototipos de funciones son realmente el importante.
Te están diciendo cómo funciona están definidos, por lo que el compilador puede generar
el código que necesita.
El código ejecutable va en un archivo de código fuente.
El archivo de código fuente termina en el . extensión c.
Código ejecutable normalmente no va en un archivo de encabezado.
Hay algunas excepciones.
Cuando quieres hacer cosas en línea que es de nuevo una
cuestión de eficiencia cuando puedes poner código
fuente en archivos de encabezado, pero normalmente a. archivo h, un El archivo de encabezado no contendrá código de implementación.
Va a contener lineas de código para definiciones justas.
Está bien, no va para tener alguna lógica allí.
Solo serán definiciones.
Esta función existe.
Esa función existe.
Estas constantes existen.
Estas diferentes estructuras existen.
No dicen cómo este código está haciendo lo que está haciendo.
Solo te dice que está ahí.
Lo necesita el compilador para generar el enlace.
Está bien, entonces vas a cree sus propios archivos de encabezado.
Vas a usar el encabezado del sistema archivos para funciones adicionales.
Es un concepto que necesitas entender antes de continuar con la
escritura de programas en c porque verá que
esto incluye directiva en todos los programas.
Y solo le dice al programa nuevamente que estamos incluyendo un código
adicional en alguna parte.
Incluimos una definición adicional código para que ahora podamos
invocar estas diferentes funciones en este código diferente en nuestro programa c.
Así que espero que tenga sentido.
De nuevo, no es un verdadero concepto complicado.
Incluimos código adicional.
Es bastante intuitivo, pero lo revisaremos y proporcionaremos más
ejemplos a medida que avanzamos.
Gracias.