File inclusion in c hindi
C प्रोग्रामिंग में फ़ाइल समावेशन का अर्थ है, किसी एक फ़ाइल की सोर्स सामग्री को दूसरी फ़ाइल में ऐड करना। यह आमतौर पर #include प्रीप्रोसेसर डायरेक्टिव का उपयोग करके किया जाता है। यहाँ फ़ाइल समावेशन का उपयोग मुख्य रूप से बड़ी प्रोग्राम प्रोजेक्ट्स को मैनेज करने के लिए किया जाता है, जिसमें एक ही प्रोग्राम सोर्स कोड को कई फ़ाइलों में अलग विभाजित किया जाता है. जिससे फाइल समावेशन प्रबंधित करना और बनाए रखना अधिक आसान हो जाता है।
Types of File Inclusion in C Programming
There are two main types of file inclusion in C programming.
Standard library inclusion – यहाँ आप अपने मैक्रोज़ प्रोग्राम में स्टैण्डर्ड लाइब्रेरी हेडर फ़ाइलें ऐड कर सकते हैं।
User-defined file inclusion – यहाँ आप मैक्रोज़ प्रोग्राम में यूजर-डिफाइन हेडर फ़ाइलें ऐड कर सकते हैं।
Inclusion of standard library in macros program.
स्टैण्डर्ड लाइब्रेरी फ़ाइलों को एंगेल ब्रैकेट (< >) का उपयोग करके ऐड किया जाता है। इन फ़ाइलों को आप स्टैण्डर्ड सिस्टम डायरेक्ट्रीज से ऐड किया जाता है।
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Inclusion of user-defined file in C macros.
सी मैक्रोज़ में यूजर डिफाइन फ़ाइलों को डबल कोट्स सिंबल (” “) का उपयोग करके ऐड किया जाता है। इन फ़ाइलों को पहले करंट डायरेक्टरी में और फिर स्टैण्डर्ड सिस्टम डायरेक्टरी लोकेशन से ऐड किया जाता है।
#include “userdefineheaderfile.h”
Using header files in C macros Example.
So let’s create a simple project in C program with one main file and one header file.
Header file userdefineheaderfile.h
#ifndef USERDEFINEHEADER_H
#define USERDEFINEHEADER_H
void printMessage();
#endif // USERDEFINEHEADER_H
C Source File Header File (USERDEFINEHEADER_H)
#include <stdio.h>
#include “USERDEFINEHEADER_H”
void printMessage() {
printf(“\n let view the header file”);
}
Main File (main.c)
#include “USERDEFINEHEADER_H”
int main() {
printMessage();
return 0;
}
Program explanation given above.
Include guards in program – हेडर फ़ाइल (USERDEFINEHEADER_H) में #ifndef, #define, और #endif डायरेक्टिव का उपयोग एक ही फ़ाइल के कई प्रोग्राम में समावेशन को रोकने में उपयोग लेते है। इसे प्रोग्राम में “गार्ड” के रूप ऐड करे।
Function declaration – यहाँ अपनी यूजर डिफाइन हेडर फ़ाइल (USERDEFINEHEADER_H) में फ़ंक्शन printMessage() को डिक्लेअर करे।
Function definition – सोर्स फ़ाइल (USERDEFINEHEADER_H) में हेडर फ़ाइल ऐड है और printMessage() फ़ंक्शन को डिफाइन करती है।
Main file – यहाँ मुख्य फ़ाइल (main.c) में हेडर फ़ाइल ऐड है, और printMessage() फ़ंक्शन को प्रोग्राम में कॉल करती है।
Compiling multiple files in a C program.
सी प्रोग्राम में मल्टीप्ल सोर्स फ़ाइलों वाले प्रोग्राम को संकलित करने के लिए, आपको हर सोर्स फ़ाइल को अलग-अलग संकलित करना होगा और फिर उन्हें एक साथ कंबाइंड करना पड़ेगा।
Using the #include standard directive in C macros in detail.
Order of file inclusion – जिस क्रम में सी प्रोग्राम में फ़ाइलें ऐड की जाती हैं, वह प्रोग्राम को इम्पैक्ट कर सकता है। आम तौर पर, स्टैण्डर्ड लाइब्रेरी हेडर फाइल पहले ऐड किए जाते हैं, उसके बाद यूजर डिफाइन हेडर फाइल ऐड किए जाते हैं।
Relative path to file – आप अपने मौजूदा प्रोग्राम में अलग-अलग हैडर फाइल डायरेक्टरी में स्थित फ़ाइलों को ऐड करने के लिए रिलेटिव पाथ का उपयोग कर सकते हैं।
#include “../include/USERDEFINEHEADER_H”
File absolute path – हालाँकि कम आम है, आप अपने सी प्रोग्राम में अब्सोलुट पाथ का भी उपयोग कर सकते है।
#include “/home/user/project/include/USERDEFINEHEADER_H”
Header file nested inclusion.
किसी भी सी प्रोग्राम में हेडर फ़ाइलों में अन्य हेडर फ़ाइलें ऐड हो सकती हैं। परिपत्र निर्भरता और एकाधिक समावेशन से बचने के लिए हैडर फाइल नेस्टेड समावेशन के साथ थोड़ा केयरफुल रहें।
USERDEFINEHEADER_H 1 (USERDEFINEHEADER_.h)
#ifndef USERDEFINEHEADER_H
#define USERDEFINEHEADER_H
#include “USERDEFINEHEADER.h”
void function1();
#endif // USERDEFINEHEADER_H
हेडर फ़ाइल USERDEFINEHEADER_H 2 (USERDEFINEHEADER2.h)
#ifndef USERDEFINEHEADER2_H
#define USERDEFINEHEADER_H2_H
void function2();
#endif // USERDEFINEHEADER2_H
source file (main.c)
#include “USERDEFINEHEADER.h”
int main() {
func1();
func2();
return 0;
}
Math Library Practical Example in C Program.
यहाँ हम अपनी विशेष प्रोग्रामिंग जरूरत के आधार पर अलग-अलग हेडर और सोर्स फ़ाइलों के साथ एक छोटी मैथ्स लाइब्रेरी क्रिएट करे।
हेडर फ़ाइल (mathlibrary.h)
#ifndef MATHLIBRARY_H
#define MATHLIBRARY_H
int total(int p, int q);
int minus(int p, int q);
#endif // MATHLIBRARY_H
Source File (MATHLIBRARY.c)
#include “MATHLIBRARY.h”
int total(int p, int q) {
return p + q;
}
int minus(int p, int q) {
return p – q;
}
Main File (main.c)
#include <stdio.h>
#include “MATHLIBRARY.h”
int main() {
int m = 2, n = 6;
printf(“\n the Add value is – %d”, total(m, n));
printf(“\n the Subtract value is – %d”, minus(m, n));
return 0;
}