c हेडर फाइल में घोषित संरचना




struct header-files (2)

बदलने के:

#include <info.h>

साथ में,

#include "info.h"

<> कम्पाइलर के साथ ही हेडर फ़ाइल को पूर्वनिर्धारित हेडर फ़ोल्डर में खोजा जाता है। इसका प्रयोग मानक पुस्तकालय हेडर फाइलों के लिए किया जाता है।
"" कंपाइलर के साथ सबसे पहले हेडर फाइल को स्थानीय निर्देशिका में खोजता है जहां आपकी। सी फाइल स्थित है। इसका उपयोग उपयोगकर्ता परिभाषित हेडर फाइलों के लिए किया जाता है।

मैं एक शीर्ष लेख फ़ाइल में एक संरचना को घोषित करना चाहता हूं ताकि मैं इसे अपने स्रोत फ़ाइल में इस्तेमाल कर सकूं। मैं क्या गलत कर रहा हूं? मैं किसी भी समारोह से अपने संरचना का उपयोग करने में सक्षम होना चाहता हूँ।

info.h

#ifndef INFO_H
#define INFO_H

typedef struct info
{
   int mem_size;
   int start_loc;
   int used_space;
   int free_space;
} INFO;
#endif

test.c

#include <stdio.h>
#include <stdlib.h>
#include <info.h>

#define F_first 1
#define F_last 2
#define F_data_int 3
#define F_data_char 4
#define F_data_float 5
#define F_print 6

void * f(int code);

int main() {

INFO in;
in.mem_size = 8;
f(F_last, 0,0);
return(0);
}

void * f(int code) {
printf("%d", in.mem_size);
}

हां ... आपको #include "info.h" उपयोग करने के लिए #include <info.h"> कस्टम आधारित हेडर के लिए उपयोग करना चाहिए। आमतौर पर वे सिस्टम शाखा का हिस्सा नहीं हैं जो आमतौर पर /usr/include निर्देशिका में स्थित /usr/include यूनिक्स / लिनक्स प्लेटफार्मों पर





header-files