Structure in C

C Programming Language in Hindi - BccFalna.com ये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook  C Programming Language in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

C Programming Language in Hindi | Page: 477 + 265 | Format: PDF

BUY NOW DOWNLOAD READ ONLINE

Structure in C: हमने देखा है कि एक Array में एक ही प्रकार के Data Type के कई मानों को एक साथ Store किया जा सकता है। लेकिन यदि हम अलग-अलग प्रकार के कई Data Items को एक ही नाम के Variable में Store कर दें, तो बनने वाले Modal को Structure कहते हैं।

Structure Logically Related Data Items का एक समूह होता है। इसमें Declare किये गए Variables एक समूह के रूप में होते हैं। Structure एक User Defined Data Type है। किसी Structure में लिखे गए विभिन्न Variables उस Structure के Members कहलाते हैं। यह जरूरी नहीं होता है कि किसी Structure के सभी Members का Data Type समान हो। वे भिन्न प्रकार के हो सकते हैं।

Structure एक ऐसा Tool है, जो Logically Related Data Items के एक समूह को एक ही नाम से संचालित कर सकता है। जैसे student_name, roll_number और marks तीन अलग-अलग प्रकार के Data Type के Data Item हैं, लेकिन ध्‍यान से देखने पर हम पाते हैं कि ये Logically एक दूसरे से सम्बंधित हैं, क्योंकि ये तीनों मिल कर किसी विधार्थी के सम्बन्ध में कुछ जानकारी देते हैं। इसलिए इन तीनों को हम student_record नाम के एक ही Variable में रख कर अलग-अलग प्रकार से संचालित कर सकते हैं। Structure जटिल Data Items के समूह को एक अधिक Meaningful तरीके से संगठित (Organize) करने की सुविधा प्रदान करता है।

Structure in C – The Definition

जैसाकि हमने अभी बताया कि Structure एक User Defined Data Type है। यानी जिस तरह से int प्रकार से Declare किये गए Variables Integers मान को ही Store कर सकते हैं, और यदि हमें Memory मे Characters Store करने हैं, तो हमें Variable को char प्रकार के Data Type का Declare करना पडता है, उसी प्रकार से Structure एक ऐसा User Defined Data Type है, जिसे User अपनी जरूरत के अनुसार बनाता है और इसमें विभिन्न प्रकार के मिश्रित Data Types के Data Items को Store कर सकता है।

सबसे पहले User को एक Structure बनाना होता है। User इस Structure में ना तो सीधे ही मान Store कर सकता है ना सीधे ही इससे मान प्राप्त कर सकता है क्योंकि ये Structure, एक प्रकार का Data Type मात्र होता है।

जैसे माना हमें 2 को 3 से जोडना है। 2 व 3 दोनों ही पूर्णांक हैं। हम Computer में इन्हें तभी जोड सकते हैं, जब ये Memory में Store हों। Memory में Store करने के लिए हमें इनके लिए Variable Declare करने पडते हैं। Variables इसलिए Declare करने पडते हैं क्योंकि दोनों संख्‍याएं Integers प्रकार की होने के बावजूद हम इन्हे int में Store नहीं कर सकते क्योंकि int कोई Memory Location नहीं है। int तो मात्र एक Data Type है जो Compiler को ये बताता है, कि जो Memory Location int प्रकार के Data Type के लिए Reserve होगी, उस Location पर केवल पूर्णांक मान ही Store होंगे और Variable Name उस Memory Location का नाम होता है, जहां वह वांछित मान जा कर Store होगा व जहां से मान आवश्‍यकतानुसार वापस प्राप्त किया जाएगा।

इस प्रकार से हम Data Type व Variable को इस प्रकार से समझ सकते हैं कि Data Type Memory में किसी स्थान पर अपने प्रकार के अनुसार कुछ Space Reserve करता है और ये निश्चित करता है कि उस Space में किस प्रकार के मान Store होंगे और उस Reserved Memory Location को जिस नाम से पहचाना जाएगा, वह नाम Variable का नाम होता है।

इसी Concept के आधार पर यदि हम कह रहे हैं कि Structure एक User Defined Data Type है, तो इसका यही मतलब है, कि Structure Memory में अपनी Size के अनुसार कुछ Space Reserve करेगा और Structure प्रकार के Variables उस Reserve किये गए Space का नाम होंगे जिससे उस Memory Location को पहचाना जाएगा जहां उस Structure प्रकार का मान Store है।

 

Structure in C – The Declaration

किसी भी Structure को निम्न Format में Declare किया जाता है:

	struct tag 
	{
		Member 1;
		Member 2;
		Member 3;
		. . .
		Member n;
	};

किसी भी Structure को Declare करने के लिए struct Keyword का प्रयोग किया जाता है। यह एक tag होता है, यानी Structure प्रकार के Variables Declare करने के लिए हमें इसी Tag का प्रयोग करना होता है,  ठीक उसी प्रकार से जैसे हम Integers प्रकार के Variables Declare करने के लिए int या Character प्रकार के Variable Declare करने के लिए char tag को Use करते है। (Structure in C – Wiki)

कोई भी Structure एक Format बनाता है, जिसे किसी Structure Variable को Declare करने के लिए Use किया जाता है। यानी ये Structure Format ये बताता है कि Structure प्रकार का कोई भी Variable किस प्रकार के मानों का लेन देन कर सकेगा। ये Structure Format Memory में तब तक किसी प्रकार का कोई Space Reserve नही करता है, जब तक कि इसमें Structure प्रकार के Variables Declare नहीं किए जाते।

किसी Structure के Member कोई भी Variable, Pointer, Array या अन्‍य प्रकार का Structure हो सकता है। हम एक उदाहरण द्वारा समझते हैं कि Structure किस प्रकार से Define होता है। माना हम एक Book_Database बनाना चाहते हैं, जिसमें Book_Name, Author_Name, PagesPrice Store करनी है। हम इसके लिए निम्नानुसार एक Structure define कर सकते हैं:

        struct book_bank
        {
                char title[20];
                char author[30];
                int page;
                float price;
        };

यहां ये Structure इस प्रकार का Format बनाता है, जिसमें चार तरह के Fields Title, Author, PagesPrice की Details को Store किया जा सकता है। इस Structure के हर Field को Structure Element या Member कहते हैं और इस Structure का हर Member एक अलग प्रकार के Data Type को Store कर सकता है। book_bank इस Structure का नाम है, जिसे Structure tag कहा जाता है।

ध्‍यान दें कि अभी तक इस Structure Definition में कोई भी Variable Declare नहीं किया गया है। केवल ये Format बनाया गया है कि कोई Variable किस-किस प्रकार के Data को Accept कर सकेगा। Structure प्रकार के Variable को हम प्रोग्राम में कहीं भी struct Keyword का प्रयोग करके Declare कर सकते हैं। जैसे-

        book_bank book1, book2, book3;

इस प्रकार से Structure book_bank प्रकार के तीन Variables book1, book2book3 Declare किये गए हैं। किसी भी Structure का Format बनाते समय ही यदि हमें Variables Declare करने हों, तो Closing Bracket के बाद हम सीधे ही Variables को Declare कर देते हैं। उसके बाद Structure को सेमी कॉलन से बन्द करते हैं। जैसे-

        struct book_bank
        {
                char title[20];
                char author[30];
                int page;
                float price;
        } book1, book2, book3;

Dynamic Memory Allocation
Accessing Structure Members

******

ये पोस्‍ट Useful लगा हो, तो Like कर दीजिए।

C Programming Language in Hindi - BccFalna.com ये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook  C Programming Language in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

C Programming Language in Hindi | Page: 477 + 265 | Format: PDF

BUY NOW DOWNLOAD READ ONLINE

Download All Hindi EBooks

सभी हिन्दी EBooks C, C++, Java, C#, ASP.NET, Oracle, Data Structure, VB6, PHP, HTML5, JavaScript, jQuery, WordPress, etc... के DOWNLOAD LINKS प्राप्‍त करें, अपने EMail पर।

Register करके Login करें। इस Popup से छुटकारा पाएें।