Array Initialization in C Language: Detailed Discussion

Array Initialization in C Language: जिस प्रकार हम किसी भी अन्‍य Variable को प्रारम्भिक मान प्रदान कर सकते हैं, वैसे ही हम Array को भी प्रारम्भिक मान दे सकते हैं। One Dimensional Array को हम निम्नानुसार मान प्रदान कर सकते हैं:

        static Data_Type   Array_Name[Size] = { List of Values };

        int b[4] = { 12,22,22,1};

इस Array में एक int प्रकार का Variable b है, जिसका आकार 4 है। यानी यह Variable Memory में लगातार int प्रकार के चार मान Store हो सके ऐसी Location पर Store होगा और हर Location पर Store Elements का मान निम्नानुसार होगा:

        b[0]        =     12

        b[1]        =     22

        b[2]        =     22

        b[3]        =     1

यदि हम Array के कुछ मान Initialize करें व कुछ छोड दें तो शेष के मान स्वयं ही 0 Initialize हो जाते हैं लेकिन ये तभी होता है जब Array को static Storage Class में Declare किया गया हो। जैसे:

        int b[4] = {1};

यह Memory में प्रथम Element को 1 Initialize करेगा शेष को 0 Initialize कर देगा। यानी:

        b[0]        =     1

        b[1]        =     0

        b[2]        =     0

        b[3]        =     0

इसी प्रकार Two Dimensional व Multi Dimensional Array को भी हम Initialize कर सकते हैं।  जैसे:

        int b[2][3] = {1, 2, 3, 4, 5, 6 };

इस Statement से प्रथम Row के तीन Column का मान 1, 2 व 3 हो जाएगा व दूसरे Row के तीनों Column का मान क्रमसे: 4, 5, व 6 हो जाएगा। इसे अन्‍य तरीके से भी Initialize कर सकते हैं।

        static int b[2][3] =  {1, 2, 3},{ 4, 5, 6 };                OR

        static int b[2][3] = {{1, 2, 3}{ 4, 5, 6} };

यदि हम कहीं पर मान Assign ना करें तो वहां पर Automatically 0 Assign हो जाता है। जैसे:

        static int b[2][3] =  {1, 2},{ 4 };                              OR

        static int b[2][3] = {{1, 2}{ 4 } };

इन दोनों उदाहरणों में प्रथम Row के तीसरे Column व दूसरी Row के दूसरे व तीसरे Column का मान Assign नहीं किया है, इसलिए इनका मान स्वयं ही 0 Initialize हो जाएगा। जब हम चाहते हों कि किसी Array के सभी मान 0 हों तो हम इसे निम्नानुसार भी Assign कर सकते हैं।

        static int b[2][3] =  {0},{0};                    OR

        static int b[2][3] = {{0}{0}};

इस प्रकार सभी Array के सभी Elements का मान 0 हो जाता है। यदि हमें Multi Dimensional Array को मान प्रदान करना हो तो भी यही तरीके अपनाते हैं।

किसी Array का Declaration करते समय हम Array की Size को किसी Constant Expression का प्रयोग करके भी Specify कर सकते हैं। जैसे

        #define LEAP 1 /* in leap years */

        int days[31+28+LEAP+31+30+31+30+31+31+30+31+30+31];

जब हम इस तरह से Array Declaration Statement लिखते हैं, तो इस Array की कुल Size 366 हो जाती है।

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 GET DEMO REVIEWS