logo

Glavne datoteke v C

noter jezik C , datoteke glave vsebujejo nabor vnaprej določenih funkcij standardne knjižnice. The .h je razširitev datotek glave v C in zahtevamo uporabo datoteke glave v našem programu tako, da jo vključimo v direktivo o predprocesiranju C #vključi.

Datoteke glave C ponujajo funkcije, kot so knjižnične funkcije, tipi podatkov, makri itd., tako da jih uvozite v program s pomočjo predprocesorske direktive #include.



Sintaksa datotek glave v C

Datoteke glave lahko vključimo v C z uporabo ene od dveh danih sintaks, ne glede na to, ali gre za vnaprej določeno ali uporabniško definirano datoteko glave.

tabela ascii v c
#include // for files in system/default directory or #include 'filename.h' // for files in same directory as source file>

Predprocesor #include usmerja prevajalnik, da je treba datoteko glave obdelati pred prevajanjem in vključuje vse potrebne vrste podatkov in definicije funkcij.

datoteke glave v C

C glava datoteke



Primer datoteke glave v C

Spodnji primer prikazuje uporabo datotek glave z uporabo standardne vhodne in izhodne datoteke glave 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;> }>

>

>

Izhod

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

Vrste datotek glave C

V jeziku C obstajata dve vrsti datotek glave:

    Standardne/že obstoječe datoteke glave Nestandardne/uporabniško določene datoteke glave

1. Standardne datoteke glave v C in njihova uporaba

Standardne datoteke glave vsebujejo knjižnice, določene v standardu ISO programskega jezika C. Shranjeni so v privzetem imeniku prevajalnika in so prisotni v vseh prevajalnikih C katerega koli prodajalca.

V najnovejši različici jezika C je 31 standardnih datotek glave. Sledi seznam nekaterih pogosto uporabljenih datotek glave v C:

Datoteka glave

Opis

Vsebuje informacije za dodajanje diagnostike, ki pomaga pri odpravljanju napak v programu.
Uporablja se za izvajanje operacij obravnave napak, kot so errno(), strerror(), perror() itd.

Vsebuje nabor različnih od platforme odvisnih konstant, povezanih z vrednostmi s plavajočo vejico. Te konstante predlaga ANSI C.

Zaradi njih so programi bolj prenosljivi. Nekaj ​​primerov konstant, vključenih v to datoteko glave, je e(eksponent), b(osnova/radiks) itd.

Uporablja se za izvajanje matematičnih operacij, kot so sqrt(), log2(), pow() itd.
Uporablja se za izvajanje funkcij za obdelavo signalov, kot sta signal() in raise().

Uporablja se za izvajanje standardnih funkcij argumentov, kot sta va_start() in va_arg(). Uporablja se tudi za označevanje začetka

seznam argumentov spremenljive dolžine in pridobiti argumente s seznama argumentov spremenljive dolžine v programu.

Vsebuje prototipe funkcij za funkcije, ki preizkušajo znake za določene lastnosti, in tudi prototipe funkcij za

funkcije, ki se lahko uporabljajo za pretvorbo velikih črk v male črke in obratno.

Uporablja se za izvajanje vhodnih in izhodnih operacij s funkcijami, kot so scanf(), printf() itd.

Vsebuje standardne pomožne funkcije, kot so malloc(), realloc() itd. Vsebuje prototipe funkcij za funkcije, ki omogočajo obhod

običajnega klica funkcije in zaporedja vračanja.

Uporablja se za izvajanje različnih funkcij, povezanih z manipulacijo nizov, kot je strlen() , strcmp() , strcpy() , size() itd.

Določa različne lastnosti različnih vrst spremenljivk. Makri, definirani v tej glavi, omejujejo vrednosti

različne vrste spremenljivk, kot so char, int in long. Te omejitve določajo, da spremenljivka ne more shraniti nobene vrednosti

zunaj teh omejitev lahko na primer nepodpisani znak shrani največjo vrednost 255.

Uporablja se za izvajanje funkcij, povezanih z date() in čas() kot setdate() in getdate(). Uporablja se tudi za spreminjanje sistemskega datuma

in dobite procesorski čas.

Vsebuje splošne definicije tipov, ki jih C uporablja za izvajanje izračunov.

Vsebuje prototipe funkcij in druge informacije, ki omogočajo spreminjanje programa za trenutno področno nastavitev, na kateri se izvaja.

Računalniškemu sistemu omogoča, da obravnava različne konvencije za izražanje podatkov, kot so časi, datumi ali velika števila po vsem svetu.

Primer

Spodnji primer prikazuje uporabo nekaterih pogosto uporabljenih datotek glave v 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;> }>

java seznam prazen

>

>

Izhod

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. Nestandardne datoteke glave v C in njihova uporaba

Nestandardne datoteke glave niso del standarda ISO jezika. Na splošno so to vse datoteke glave, ki jih definirajo programerji za namene, kot je vsebovanje funkcij knjižnice po meri itd. Ročno jih namesti uporabnik ali morda del prevajalnika s strani določenega prodajalca.

Obstaja veliko nestandardnih knjižnic za jezik C. Nekatere pogosto uporabljene nestandardne/uporabniško definirane datoteke glave so navedene spodaj:

Datoteka glave Opis
Vsebuje nekaj uporabnih funkcij konzole.
Vsebuje knjižnico GUI GNU za C.

Primer

Spodnji primer prikazuje uporabo nestandardne datoteke glave 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;> }>

>

>

Izhod

Press any key to print message Hello! Geek>

Ustvarite lastno datoteko glave v C

Namesto pisanja velike in zapletene kode lahko ustvarimo lastne datoteke z glavami in jih vključimo v naš program za uporabo, kadar koli želimo. Izboljša funkcionalnost in berljivost kode. Spodaj so navedeni koraki za ustvarjanje lastne datoteke z glavo:

Korak 1: Napišite svojo kodo C in shranite to datoteko z .h razširitev. Spodaj je ilustracija datoteke glave:

C

glavni program v Javi




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

>

prenesite youtube video vlc

>

2. korak: Vključite svojo datoteko glave z #vključi v vašem programu C, kot je prikazano spodaj:

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

>

>

Izhod

Sum is: 35>

Vključno z več datotekami glave

V programu lahko uporabite različne datoteke glave. Ko je datoteka glave dvakrat vključena v program, prevajalnik obdela vsebino te datoteke glave dvakrat. To vodi do napake v programu. Za odpravo te napake se uporabljajo pogojne direktive predprocesorja.

Sintaksa

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

Ta konstrukcija se imenuje ovoj #ifndef . Ko je glava znova vključena, bo pogojnik postal napačen, ker HEADER_FILE_NAME je definiran. Predprocesor bo preskočil celotno vsebino datoteke in prevajalnik je ne bo videl dvakrat.

Včasih je nujno vključiti več različnih datotek glave glede na zahteve programa. Za to se uporablja več pogojnikov.

Sintaksa

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