Notes in Hindi

Rules of Array Declaration in C in Hindi

/ BCA / Programming with C and CPP

Rules and Initialization of Arrays in C in Hindi

Rules of Array Declaration in C in Hindi

Introduction

जब हम programming में एक जैसे प्रकार के कई data को store करना चाहते हैं, तो हम Array का प्रयोग करते हैं। C भाषा में array एक ऐसा data structure है जो एक ही type के elements को एक साथ memory में लगातार (contiguous) स्थानों पर store करता है।

Basic Rules of Array Declaration in C

  • Array को declare करने से पहले हमें यह तय करना होता है कि वह किस data type का होगा – जैसे int, float, char आदि।
  • Array declaration में उसके नाम के बाद square brackets [] का प्रयोग होता है जिसमें array की size दी जाती है।
  • Array का नाम एक valid identifier होना चाहिए (जैसे कि किसी variable का नाम होता है)।
  • Array size हमेशा एक positive integer value होनी चाहिए।
  • Array declaration करते समय semicolon (;) अनिवार्य होता है।

Syntax of Array Declaration

data_type array_name[array_size];

Examples

int marks[5]; // integer array with 5 elements
float price[10]; // float array with 10 elements
char grade[3]; // character array with 3 elements

Memory Representation

जब हम int marks[5]; लिखते हैं, तो C कंपाइलर memory में 5 लगातार जगहों पर 4-4 bytes (integer के लिए) reserve कर देता है।

Array Initialization Techniques in C in Hindi

Introduction

Array initialization का मतलब है कि जब हम array declare करते हैं, तभी उसके अंदर कुछ values डाल देना। इसे हम कई तरीकों से कर सकते हैं।

1. Compile-Time Initialization

  • Array declare करते समय ही values assign कर देना।
  • इसमें हमें array की size देना optional होता है।
int marks[5] = {90, 85, 75, 80, 95};
int roll[] = {1, 2, 3, 4, 5}; // size compiler अपने आप तय कर लेगा

2. Partial Initialization

  • अगर initialization में दिए गए values, declared size से कम हों तो बाकी elements को default values मिलती हैं।
int numbers[5] = {10, 20}; // बाकी तीन elements को 0 assign होंगे

3. Designated Initialization (C99 onwards)

  • C के नए versions में हम किसी specific index पर value assign कर सकते हैं।
int marks[5] = {[2] = 75, [4] = 95}; // index 2 और 4 पर value

Default Values in Array Initialization in Hindi

Default Values क्या होती हैं?

जब हम array को पूरी तरह initialize नहीं करते, तब बाकी elements को compiler द्वारा default values दी जाती हैं।

Important Points:

  • Local scope में declared array के uninitialized elements garbage values रखते हैं।
  • Global या static array के uninitialized elements को default value 0 मिलती है।

Example (Local Array)

void main() { int a[5]; // local array printf("%d", a[2]); // unpredictable (garbage value) }

Example (Global Array)

int a[5]; // global array void main() { printf("%d", a[2]); // Output: 0 }

Common Errors in Array Declaration in Hindi

1. Size देना भूल जाना

int a[]; // ❌ Error: size unspecified and no initializer

2. Size को zero या negative रखना

int a[0]; // ❌ Error
int b[-5]; // ❌ Error

3. Size non-integer रखना

int a[5.5]; // ❌ Error: size must be integer

4. Array Boundaries का उल्लंघन

  • Declared size से बाहर access करना undefined behavior देता है।
int a[3] = {10, 20, 30};
printf("%d", a[5]); // ❌ Error: out of bounds access

5. Wrong Data Type Initialization

int a[3] = {'a', 'b', 'c'}; // Though it compiles, data type mismatch may confuse beginners

6. Forgetting Semicolon

int a[5] = {1, 2, 3, 4, 5} // ❌ Error: missing semicolon

सारांश (Recap Points)

  • Array declare करने से पहले data type और size का ध्यान रखें।
  • Array initialization कई तरीकों से किया जा सकता है – compile-time, partial, designated आदि।
  • Local और global arrays के default behavior को समझना जरूरी है।
  • Common errors जैसे size न देना, boundaries cross करना, या data type mismatch से बचें।

छोटा Table (Difference Table: Local vs Global Arrays)

Property Local Array Global Array
Default Values Garbage 0
Scope Function के अंदर Program के सभी functions में
Storage Class Automatic Static

Beginner Friendly Suggestion

  • हमेशा array को initialize करते समय values की संख्या और size पर ध्यान दें।
  • Array की boundaries को cross ना करें।
  • Debug करने के लिए loop से सभी values print करें।
  • कोशिश करें कि initialization करते समय size भी दें – इससे compiler को पता रहता है कि कितने elements reserve करने हैं।

FAQs

C में array declare करने के लिए हमें data type, array का नाम और square brackets में size देना होता है।
int numbers[5];
इसका मतलब है कि एक integer type का array बनाया गया है जिसमें 5 elements store किए जा सकते हैं।
Array को declare करते समय हम values को curly braces {} में देकर initialize कर सकते हैं:
int marks[3] = {90, 85, 95};
इससे हर index पर value assign हो जाती है। यदि size न दें तो compiler अपने आप count कर लेता है:
int marks[] = {90, 85, 95};
यदि array global या static declare किया गया हो तो सभी elements की default value 0 होती है।
लेकिन अगर array local declare किया गया हो तो उसके elements की default value undefined होती है यानी garbage values।
नहीं, Array boundaries से बाहर access करना undefined behavior कहलाता है। इससे program crash हो सकता है या गलत output आ सकता है।
उदाहरण: int a[3]; a[5] = 100; ये गलत है और memory corruption का कारण बन सकता है।
Array declaration में होने वाली सामान्य गलतियाँ ये हैं:
  • Array की size न देना और initialization भी न करना
  • Size को negative या decimal रखना
  • Semicolon भूल जाना
  • Declared size से ज्यादा values assign करना
  • Wrong data type का initialization

Please Give Us Feedback