পয়েন্টার হলো এমন ভেরিয়েবল যা অন্য ভেরিয়েবলের অ্যাড্রেস সংরক্ষণ করে। যখন আমরা একটি ভেরিয়েবলের জন্য মেমরি অ্যালোকেট করি, পয়েন্টার সেই ভেরিয়েবলের অ্যাড্রেসকে পয়েন্ট করে। ইউনারি অপারেটর (*) ব্যবহার করে একটি ভেরিয়েবল ডিক্লেয়ার করা হয় এবং এটি অ্যালোকেটেড মেমরির অ্যাড্রেস রিটার্ন করে। অ্যারে পয়েন্টার হলো অ্যারে ভেরিয়েবলের মেমরি ব্লকের অ্যাড্রেসকে পয়েন্ট করে।
অ্যারে পয়েন্টারের সিনট্যাক্স:
datatype *variable_name[size];
এখানে,
- datatype − int, char, float ইত্যাদি ডেটা টাইপ।
- variable_name − ইউজার দেওয়া ভেরিয়েবলের নাম।
- size − অ্যারে ভেরিয়েবলের আকার।
অ্যারে পয়েন্টারের উদাহরণ:
উদাহরণ
#include <stdio.h>
int main () {
int *arr[3];
int *a;
printf( "Value of array pointer variable : %d\n", arr);
printf( "Value of pointer variable : %d\n", &a);
return 0;
}
আউটপুট
Value of array pointer variable : 1481173888 Value of pointer variable : 1481173880
উপরের প্রোগ্রামে একটি অ্যারে পয়েন্টার *arr এবং একটি ইন্টিজার পয়েন্টার *a ডিক্লেয়ার করা হয়েছে।
int *arr[3]; int *a;
এই পয়েন্টারগুলোর অ্যাড্রেসগুলো নিচের মত করে প্রিন্ট করা হয়েছে:
printf( "Value of array pointer variable : %d\n", arr); printf( "Value of pointer variable : %d\n", &a);