logo

Header-Dateien in C

In C Sprache , Header-Dateien enthalten eine Reihe vordefinierter Standardbibliotheksfunktionen. Der .H ist die Erweiterung der Header-Dateien in C und wir fordern die Verwendung einer Header-Datei in unserem Programm an, indem wir sie in die C-Vorverarbeitungsanweisung einbinden #enthalten.

C-Header-Dateien bieten Funktionen wie Bibliotheksfunktionen, Datentypen, Makros usw., indem sie mithilfe einer Präprozessoranweisung #include in das Programm importiert werden.



Syntax von Header-Dateien in C

Wir können Header-Dateien in C einbinden, indem wir eine der beiden angegebenen Syntaxen verwenden, unabhängig davon, ob es sich um eine vordefinierte oder eine benutzerdefinierte Header-Datei handelt.

np.einzigartig
#include // for files in system/default directory or #include 'filename.h' // for files in same directory as source file>

Der #include-Präprozessor weist den Compiler an, dass die Header-Datei vor der Kompilierung verarbeitet werden muss, und enthält alle erforderlichen Datentypen und Funktionsdefinitionen.

Header-Dateien in C

C-Header-Datei



Beispiel einer Header-Datei in C

Das folgende Beispiel zeigt die Verwendung von Header-Dateien unter Verwendung der Standard-Eingabe- und Ausgabe-Header-Datei stdio.h

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;> }>

>

>

Ausgabe

Printf() is the function in stdio.h header file>

Arten von C-Header-Dateien

In C gibt es zwei Arten von Header-Dateien:

    Standard-/bereits vorhandene Header-Dateien Nicht standardmäßige/benutzerdefinierte Header-Dateien

1. Standard-Header-Dateien in C und ihre Verwendung

Standard-Header-Dateien enthalten die im ISO-Standard der Programmiersprache C definierten Bibliotheken. Sie werden im Standardverzeichnis des Compilers gespeichert und sind in allen C-Compilern aller Hersteller vorhanden.

In der neuesten Version der C-Sprache gibt es 31 Standard-Header-Dateien. Im Folgenden finden Sie eine Liste einiger häufig verwendeter Header-Dateien in C:

Header-Datei

Beschreibung

Es enthält Informationen zum Hinzufügen von Diagnosen, die das Debuggen von Programmen unterstützen.
Es wird verwendet, um Fehlerbehandlungsoperationen wie errno(), strerror(), perror() usw. auszuführen.

Es enthält eine Reihe verschiedener plattformabhängiger Konstanten, die sich auf Gleitkommawerte beziehen. Diese Konstanten werden von ANSI C vorgeschlagen.

Sie machen Programme portabler. Einige Beispiele für in dieser Header-Datei enthaltene Konstanten sind e(Exponent), b(Basis/Basis) usw.

Es wird verwendet, um mathematische Operationen wie sqrt() , log2() , pow() usw. auszuführen.
Es wird verwendet, um Signalverarbeitungsfunktionen wie signal() und raise() auszuführen.

Es wird verwendet, um Standardargumentfunktionen wie va_start() und va_arg() auszuführen. Es wird auch verwendet, um den Beginn des anzuzeigen

um eine Liste mit Argumenten variabler Länge zu erstellen bzw. die Argumente aus der Liste mit Argumenten variabler Länge im Programm abzurufen.

Es enthält Funktionsprototypen für Funktionen, die Zeichen auf bestimmte Eigenschaften testen, sowie Funktionsprototypen für

Funktionen, mit denen sich Großbuchstaben in Kleinbuchstaben umwandeln lassen und umgekehrt.

Es wird verwendet, um Ein- und Ausgabeoperationen mit Funktionen wie scanf() , printf() usw. durchzuführen.

Es enthält Standarddienstfunktionen wie malloc(), realloc() usw. Es enthält Funktionsprototypen für Funktionen, die eine Umgehung ermöglichen

der üblichen Funktionsaufruf- und Rückgabesequenz.

Es wird verwendet, um verschiedene Funktionen im Zusammenhang mit der String-Manipulation auszuführen, z strlen() , strcmp() , strcpy() , size() usw.

Es bestimmt die verschiedenen Eigenschaften der verschiedenen Variablentypen. Die in diesem Header definierten Makros begrenzen die Werte von

verschiedene Variablentypen wie char, int und long. Diese Grenzwerte legen fest, dass eine Variable keinen Wert speichern kann

Über diese Grenzen hinaus kann ein vorzeichenloses Zeichen beispielsweise einen Maximalwert von 255 speichern.

Es wird verwendet, um Funktionen im Zusammenhang mit date() und auszuführen Zeit() wie setdate() und getdate() . Es wird auch verwendet, um das Systemdatum zu ändern

und erhalten Sie jeweils die CPU-Zeit.

Es enthält allgemeine Typdefinitionen, die von C zum Durchführen von Berechnungen verwendet werden.

Es enthält Funktionsprototypen und andere Informationen, die es ermöglichen, ein Programm für das aktuelle Gebietsschema, in dem es ausgeführt wird, zu ändern.

Es ermöglicht dem Computersystem, unterschiedliche Konventionen zum Ausdruck von Daten wie Uhrzeiten, Daten oder großen Zahlen auf der ganzen Welt zu handhaben.

Beispiel

Das folgende Beispiel zeigt die Verwendung einiger häufig verwendeter Header-Dateien in 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;> }>

Zeichen in eine Zeichenfolge umwandeln

>

>

Ausgabe

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. Nicht standardmäßige Header-Dateien in C und ihre Verwendung

Nicht standardmäßige Header-Dateien sind nicht Teil des ISO-Standards der Sprache. Dabei handelt es sich im Allgemeinen um alle Header-Dateien, die von den Programmierern definiert werden, um beispielsweise benutzerdefinierte Bibliotheksfunktionen usw. zu enthalten. Sie werden vom Benutzer manuell installiert oder sind möglicherweise Teil des Compilers eines bestimmten Anbieters.

Es gibt viele nicht standardmäßige Bibliotheken für die Sprache C. Einige häufig verwendete nicht standardmäßige/benutzerdefinierte Header-Dateien sind unten aufgeführt:

Header-Datei Beschreibung
Es enthält einige nützliche Konsolenfunktionen.
Es enthält die GUI-Bibliothek von GNU für C.

Beispiel

Das folgende Beispiel zeigt die Verwendung der nicht standardmäßigen Header-Datei 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;> }>

>

Regisseur Karan Johar
>

Ausgabe

Press any key to print message Hello! Geek>

Erstellen Sie Ihre eigene Header-Datei in C

Anstatt einen großen und komplexen Code zu schreiben, können wir unsere eigenen Header-Dateien erstellen und sie in unser Programm einbinden, um sie jederzeit zu verwenden. Es verbessert die Funktionalität und Lesbarkeit des Codes. Im Folgenden finden Sie die Schritte zum Erstellen unserer eigenen Header-Datei:

Schritt 1: Schreiben Sie Ihren eigenen C-Code und speichern Sie diese Datei mit .H Verlängerung. Unten sehen Sie die Abbildung der Header-Datei:

C




// Function to find the sum of two> // numbers passed> int> sumOfTwoNumbers(>int> a,>int> b)> {> >return> (a + b);> }>

>

Hashset vs. Hashmap

>

Schritt 2: Fügen Sie Ihre Header-Datei hinzu #enthalten in Ihrem C-Programm wie unten gezeigt:

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));> }>

>

>

Ausgabe

Sum is: 35>

Einschließlich mehrerer Header-Dateien

Sie können in einem Programm verschiedene Header-Dateien verwenden. Wenn eine Header-Datei zweimal in ein Programm eingebunden ist, verarbeitet der Compiler den Inhalt dieser Header-Datei zweimal. Dies führt zu einem Fehler im Programm. Um diesen Fehler zu beheben, werden bedingte Präprozessoranweisungen verwendet.

Syntax

#ifndef HEADER_FILE_NAME #define HEADER_FILE_NAME the entire header file #endif>

Dieses Konstrukt wird Wrapper genannt #ifndef . Wenn der Header erneut eingefügt wird, wird die Bedingung falsch, weil HEADER_FILE_NAME ist definiert. Der Präprozessor überspringt den gesamten Dateiinhalt und der Compiler sieht ihn nicht zweimal.

Manchmal ist es wichtig, je nach den Anforderungen des Programms mehrere unterschiedliche Header-Dateien einzubinden. Hierzu werden mehrere Bedingungen verwendet.

Syntax

#if SYSTEM_ONE #include 'system1.h' #elif SYSTEM_TWO #include 'system2.h' #elif SYSTEM_THREE .... #endif>