pointer and arrays in C language

Introduction

अब तक हमने pointers और arrays को अलग-अलग समझा है, लेकिन C language में दोनों का बहुत गहरा संबंध होता है।

Important बात:
Array का नाम खुद एक pointer की तरह behave करता है।

जब हम array declare करते हैं:

int arr[5];

तो:

  • arr actually first element का address represent करता है
  • यानी arr = &arr[0]

इसी कारण pointer और array को साथ में use करके हम:

  • data को efficiently access कर सकते हैं
  • loops को simplify कर सकते हैं
  • memory handling को better बना सकते हैं

यह concept exam और practical दोनों के लिए बहुत important है।

Definition

Pointer and Arrays का मतलब है pointer का उपयोग करके array elements को access और manipulate करना।

Basic Concept

arr[i]  ≡  *(arr + i)

मतलब:

  • index method
  • pointer method
    दोनों same काम करते हैं

Example 1: Array Access using Pointer

#include <stdio.h>
int main()
{
int arr[3] = {10, 20, 30};
int *p = arr;

printf("%d\n", *p);
printf("%d\n", *(p + 1));
printf("%d", *(p + 2));

return 0;
}

Output:

10
20
30

Explanation:

  • p → first element का address
  • (p + 1) → next element

Example 2: Using Array Index and Pointer दोनों

#include <stdio.h>

int main()
{
int arr[3] = {5, 10, 15};
int i;

for (i = 0; i < 3; i++)
{
printf("%d %d\n", arr[i], *(arr + i));
}
return 0;
}

Output:

5 5
10 10
15 15

Explanation:

  • दोनों methods same output देते हैं

Example 3: Modify Array using Pointer

#include <stdio.h>

int main()
{
int arr[3] = {1, 2, 3};
int *p = arr;
int i;

for (i = 0; i < 3; i++)
{
*(p + i) = *(p + i) * 2;
} for (i = 0; i < 3; i++)
{
printf("%d ", arr[i]);
}
return 0;
}

Output:

2 4 6

Explanation:

  • pointer से original array modify हुआ

Example 4: Pointer Traversal

#include <stdio.h>

int main()
{
int arr[3] = {10, 20, 30};
int *p = arr;

int i;
for (i = 0; i < 3; i++)
{
printf("%d ", *p);
p++;
}

return 0;
}

Output:

10 20 30

Explanation:

  • pointer move करके array traverse किया

Important Concepts

1. Array Name as Pointer

arr == &arr[0]

2. Pointer Arithmetic

*(arr + i)

Technical Understanding

Pointer + Array का use:

  • fast data access
  • array traversal
  • dynamic memory
  • efficient looping

Important Points

  • array name pointer की तरह behave करता है
  • pointer arithmetic array में use होता है
  • दोनों methods equivalent हैं
  • pointer से array modify हो सकता है

Exam Points

  • pointer + array relation जरूर पूछा जाता है
  • arr[i] = *(arr + i) (very important)
  • array name = base address
  • pointer traversal important है
  • output-based questions आते हैं

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top