logo

#inkludera i C

#omfatta är ett sätt att inkludera en standard- eller användardefinierad fil i programmet och skrivs oftast i början av ett C-program. Direktivet #include preprocessor läses av förprocessorn och instruerar den att infoga innehållet i en användardefinierad eller systemhuvudfil i vårt C-program. Dessa filer importeras huvudsakligen från externa rubrikfiler.

Processen att importera sådana filer som kan vara systemdefinierade eller användardefinierade kallas Filinkludering . Detta förprocessordirektiv säger åt kompilatorn att inkludera en fil i källkodsprogrammet.



Typer av header-filer

Det finns två typer av filer som kan inkluderas med #include:

1. Redan existerande rubrikfiler: De redan existerande rubrikfilerna levereras med kompilatorn och finns i standardsystemfilkatalogen. Den här filen innehåller C-standardbiblioteksfunktionsdeklarationer och makrodefinitioner som ska delas mellan flera källfiler. Funktioner som printf(), scanf(), cout, cin och olika andra input-output eller andra standardfunktioner finns i olika redan existerande rubrikfiler.

2. Användardefinierade rubrikfiler: Dessa filer liknar rubrikfilerna, förutom det faktum att de är skrivna och definierade av användaren själv. Detta sparar användaren från att skriva en viss funktion flera gånger.



Syntax för #inkludera i C

Det finns två varianter av hur vi kan använda #include i vårt C-program.

1. Inklusive att använda

Det används främst för att komma åt redan existerande systemhuvudfiler finns i standardsystemkatalogerna.

  #include>

När en fil importeras med vinkelparenteser(), använder förprocessorn en förutbestämd katalogsökväg för att komma åt filen.



2. Inklusive att använda

Denna typ används huvudsakligen för att komma åt alla header-filer för användarens program eller användardefinierade filer.

  #include   'user-defined_file'>

När du använder dubbla citattecken( ), kommer förprocessorn åt den aktuella katalogen där källhuvudfilen finns eller standardsystemkatalogerna.

För att importera den användardefinierade rubrikfilen med #include, bör filen finnas i en katalogsökväg i förhållande till din C-källfil, annars kommer förprocessorn att börja söka efter den i standardsystemkatalogen.

För att veta mer se Skillnaden mellan #inkludera och #inkludera

Exempel på #inkludera i C

Exempel 1

Nedanstående kod visar importen av en system-I/O-header eller standardfil.

C




// C program showing the header file including> // standard input-output header file> #include> int> main()> {> >// 'printf()' belongs to stdio.h> >printf>(>'hello world'>);> >return> 0;> }>

>

>

Produktion

hello world>

Exempel 2

I exemplet nedan visas#include>direktiv tillåter oss att använda matematiska funktioner somsqrt>för att beräkna kvadratroten.

C




// C program to calculate square root of a number using the> // math library functions> #include // Including math header for mathematical operations> #include> int> main()> {> >double> num = 14.0;> >double> Res =>sqrt>(num);> >printf>(>'Square root of %.2f is %.2f '>, num, Res);> >return> 0;> }>

gigabyte vs megabyte

>

>

Produktion

Square root of 14.00 is 3.74>

Exempel 3

Koden nedan visar skapandet och importen av en användardefinierad fil.

Skapa en användardefinierad rubrik med namnet process.h.

C




// It is not recommended to put function definitions> // in a header file. Ideally there should be only> // function declarations. Purpose of this code is> // to only demonstrate working of header files.> void> add(>int> a,>int> b)> {> >printf>(>'Added value=%d '>, a + b);> }> void> multiply(>int> a,>int> b)> {> >printf>(>'Multiplied value=%d '>, a * b);> }>

>

>

Skapar huvudfilen där process.h ovan kommer att inkluderas.

C




// C program to illustrate file inclusion> // used to import system header file> #include> // ' ' used to import user-defined file> #include 'process.h'> // main function> int> main()> {> >// add function defined in process.h> >add(10, 20);> >// multiply function defined in process.h> >multiply(10, 20);> >// printf defined in stdio.h> >printf>(>'Process completed'>);> >return> 0;> }>

>

>

Förklaring

Inkludera processen.h-filen i ett annat program. Nu eftersom vi behöver inkludera stdio.h som #include för att kunna använda printf()-funktionen på liknande sätt, måste vi också inkludera rubrikfilen process.h som #include process.h. Den instruerar förprocessorn att titta in i den aktuella mappen eller standardmappen för alla rubrikfiler, om de inte finns i den aktuella mappen.

Om vinkelparenteser används istället för kommer kompilatorn att söka efter header-filen i standardmappen med header-filer. Om du använder måste du se till att den skapade rubrikfilen sparas i samma mapp där den aktuella C-filen som använder denna rubrikfil sparas.

Slutsats

I C-programmering är #include-direktivet mycket viktigt för att integrera externa filer (header-filer) i ett program. Detta direktiv placeras alltid i början av ett C-program och det är ett förprocessorkommando som säger åt kompilatorn att inkludera innehållet i filen som anges efter #include-direktivet. Det finns två typer av filer som kan inkluderas: redan existerande systemhuvudfiler och användardefinierade huvudfiler. Sammantaget tillåter detta direktiv oss att skriva en modulär kod, organisera koden och lättåteranvända funktioner.