En lenguaje C , los archivos de encabezado contienen un conjunto de funciones de biblioteca estándar predefinidas. El .h es la extensión de los archivos de encabezado en C y solicitamos usar un archivo de encabezado en nuestro programa incluyéndolo con la directiva de preprocesamiento de C #incluir.
Los archivos de encabezado C ofrecen características como funciones de biblioteca, tipos de datos, macros, etc., importándolos al programa con la ayuda de una directiva de preprocesador #include.
Sintaxis de archivos de encabezado en C
Podemos incluir archivos de encabezado en C usando una de las dos sintaxis dadas, ya sea un archivo de encabezado predefinido o definido por el usuario.
diseño de cuadrícula
#include // for files in system/default directory or #include 'filename.h' // for files in same directory as source file>
El preprocesador #include indica al compilador que el archivo de encabezado debe procesarse antes de la compilación e incluye todos los tipos de datos y definiciones de funciones necesarios.

Archivo de encabezado C
Ejemplo de archivo de encabezado en C
El siguiente ejemplo demuestra el uso de archivos de encabezado utilizando el archivo de encabezado stdio.h de entrada y salida estándar.
C
// C program to demonstrate the use of header files> // standard input and output stdio.h header file> #include> int> main()> {> >printf>(> >'Printf() is the function in stdio.h header file'>);> >return> 0;> }> |
>
>Producción
Printf() is the function in stdio.h header file>
Tipos de archivos de encabezado C
Hay dos tipos de archivos de encabezado en C:
- Archivos de encabezado estándar/preexistentes Archivos de encabezado no estándar/definidos por el usuario
1. Archivos de encabezado estándar en C y sus usos
Los archivos de encabezado estándar contienen las bibliotecas definidas en el estándar ISO del lenguaje de programación C. Se almacenan en el directorio predeterminado del compilador y están presentes en todos los compiladores de C de cualquier proveedor.
Hay 31 archivos de encabezado estándar en la última versión del lenguaje C. A continuación se muestra la lista de algunos archivos de encabezado comúnmente utilizados en C:
| Archivo de cabecera | Descripción |
|---|---|
| Contiene información para agregar diagnósticos que ayudan a la depuración del programa. | |
| Se utiliza para realizar operaciones de manejo de errores como errno(), strerror(), perror(), etc. | |
| Contiene un conjunto de varias constantes dependientes de la plataforma relacionadas con valores de punto flotante. Estas constantes son propuestas por ANSI C. Hacen que los programas sean más portátiles. Algunos ejemplos de constantes incluidas en este archivo de encabezado son: e(exponente), b(base/radix), etc. | |
| Se utiliza para realizar operaciones matemáticas como sqrt() , log2() , pow() , etc. | |
| Se utiliza para realizar funciones de manejo de señales como signal() y rise(). | |
| Se utiliza para realizar funciones de argumentos estándar como va_start() y va_arg(). También se utiliza para indicar el inicio de la lista de argumentos de longitud variable y para recuperar los argumentos de la lista de argumentos de longitud variable en el programa respectivamente. | |
| Contiene prototipos de funciones para funciones que prueban caracteres para ciertas propiedades, y también prototipos de funciones para Funciones que se pueden utilizar para convertir letras mayúsculas a minúsculas y viceversa. | |
| Se utiliza para realizar operaciones de entrada y salida utilizando funciones como scanf() , printf() , etc. | |
| Contiene funciones de utilidad estándar como malloc(), realloc(), etc. Contiene prototipos de funciones para funciones que permiten omitir de la llamada de función habitual y la secuencia de retorno. | |
| Se utiliza para realizar diversas funcionalidades relacionadas con la manipulación de cadenas como strlen() , strcmp() , strcpy() , tamaño(), etc. | |
| Determina las diversas propiedades de los distintos tipos de variables. Las macros definidas en este encabezado limitan los valores de varios tipos de variables como char, int y long. Estos límites especifican que una variable no puede almacenar ningún valor. más allá de estos límites, por ejemplo, un carácter sin signo puede almacenar hasta un valor máximo de 255. | |
| Se utiliza para realizar funciones relacionadas con date() y tiempo() como setdate() y getdate() . También se utiliza para modificar la fecha del sistema. y obtener el tiempo de CPU respectivamente. | |
| Contiene definiciones de tipos comunes utilizadas por C para realizar cálculos. | |
| Contiene prototipos de funciones y otra información que permite modificar un programa para la configuración regional actual en la que se ejecuta. Permite que el sistema informático maneje diferentes convenciones para expresar datos como horas, fechas o números grandes en todo el mundo. |
Ejemplo
El siguiente ejemplo demuestra el uso de algunos archivos de encabezado comúnmente utilizados en C.
C
// C program to illustrate> // the use of header file> // in C> #include> #include> #include> #include> // Driver Code> int> main()> {> >char> s1[20] =>'12345'>;> >char> s2[10] =>'Geeks'>;> >char> s3[10] =>'ForGeeks'>;> >long> int> res;> >// Find the value of 9^3 using a> >// function in math.h library> >res =>pow>(9, 3);> >printf>(>'Using math.h, '> >'The value is: %ld
'>,> >res);> >// Convert a string to long long int> >// using a function in stdlib.h library> >long> int> a =>atol>(s1);> >printf>(>'Using stdlib.h, the string'>);> >printf>(>' to long int: %ld
'>, a);> >// Copy the string s3 into s2 using> >// using a function in string.h library> >strcpy>(s2, s3);> >printf>(>'Using string.h, the strings'> >' s2 and s3: %s %s
'>,> >s2, s3);> >return> 0;> }> |
guardar videos de youtube vlc
>
>Producción
Using math.h, The value is: 729 Using stdlib.h, the string to long int: 12345 Using string.h, the strings s2 and s3: ForGeeks ForGeeks>
2. Archivos de encabezado no estándar en C y sus usos
Los archivos de encabezado no estándar no forman parte del estándar ISO del idioma. Generalmente son todos los archivos de encabezado definidos por los programadores con fines como contener funciones de biblioteca personalizadas, etc. Los instala manualmente el usuario o tal vez formen parte del compilador por parte de algún proveedor específico.
Hay muchas bibliotecas no estándar para lenguaje C. A continuación se enumeran algunos archivos de encabezado no estándar o definidos por el usuario de uso común:
| Archivo de cabecera | Descripción |
|---|---|
| Contiene algunas funciones útiles de la consola. | |
| Contiene la biblioteca GUI de GNU para C. |
Ejemplo
El siguiente ejemplo demuestra el uso del archivo de encabezado no estándar conio.h.
C
#include> #include> // Function to display a welcome message> void> displayMessage() {> >printf>(>'Hello! Geek
'>);> }> int> main() {> >// Using conio.h functions> >printf>(>'Press any key to print message
'>);> >getch();>// Wait for a key press> >// Call the additional function after a key press> >displayMessage();> >return> 0;> }> |
>
>
Producción
Press any key to print message Hello! Geek>
Crea tu propio archivo de encabezado en C
En lugar de escribir un código grande y complejo, podemos crear nuestros propios archivos de encabezado e incluirlos en nuestro programa para usarlos cuando queramos. Mejora la funcionalidad y legibilidad del código. A continuación se detallan los pasos para crear nuestro propio archivo de encabezado:
factorial en c
Paso 1: Escriba su propio código C y guarde ese archivo con el .h extensión. A continuación se muestra la ilustración del archivo de encabezado:
C
// Function to find the sum of two> // numbers passed> int> sumOfTwoNumbers(>int> a,>int> b)> {> >return> (a + b);> }> |
>
csma y csma cd
>
Paso 2: Incluya su archivo de encabezado con #incluir en su programa C como se muestra a continuación:
C
// C++ program to find the sum of two> // numbers using function declared in> // header file> #include 'iostream'> // Including header file> #include 'sum.h'> using> namespace> std;> // Driver Code> int> main()> {> >// Given two numbers> >int> a = 13, b = 22;> >// Function declared in header> >// file to find the sum> >printf>(>'Sum is: %d'>, sumoftwonumbers(a, b));> }> |
>
>
Producción
Sum is: 35>
Incluir varios archivos de encabezado
Puede utilizar varios archivos de encabezado en un programa. Cuando un archivo de encabezado se incluye dos veces dentro de un programa, el compilador procesa el contenido de ese archivo de encabezado dos veces. Esto conduce a un error en el programa. Para eliminar este error, se utilizan directivas de preprocesador condicionales.
Sintaxis
#ifndef HEADER_FILE_NAME #define HEADER_FILE_NAME the entire header file #endif>
Esta construcción se llama contenedor. #ifndef . Cuando se incluya nuevamente el encabezado, el condicional se volverá falso, porque HEADER_FILE_NAME se define. El preprocesador omitirá todo el contenido del archivo y el compilador no lo verá dos veces.
A veces es esencial incluir varios archivos de encabezado diversos según los requisitos del programa. Para ello, se utilizan múltiples condicionales.
Sintaxis
#if SYSTEM_ONE #include 'system1.h' #elif SYSTEM_TWO #include 'system2.h' #elif SYSTEM_THREE .... #endif>