জাভা-এর মতো একটি ল্যাঙ্গুয়েজে, যদি অ্যারে বাউন্ডের বাইরে অ্যাক্সেস করা হয়, তবে java.lang.ArrayIndexOutOfBoundsException এক্সসেপশন ঘটে। কিন্তু সি-তে এমন কোনো ফাংশনালিটি নেই এবং অ্যারে বাউন্ডের বাইরে অ্যাক্সেস করলে অনির্দিষ্ট আচরণ (undefined behaviour) ঘটে।
এটি প্রদর্শন করে একটি সি প্রোগ্রাম নিচে দেওয়া হলো।
উদাহরণ
#include <stdio.h>
int main() {
int arr[] = {1,2,3,4,5};
printf("The elements of array: ");
for(int i = 0; i < 6; i++)
printf(" %d", arr[i]);
return 0;
}
আউটপুট
উপরের প্রোগ্রামের আউটপুট নিচের মতো:
The elements of array: 1 2 3 4 5 32765
এখন উপরের প্রোগ্রামটি বুঝি।
arr অ্যারেটি সাবস্ক্রিপ্ট ৪ পর্যন্ত মান অ্যাসাইন করা আছে। তাই যখন অ্যারে এলিমেন্টগুলো প্রিন্ট করা হয়, arr[5] একটি গার্বেজ ভ্যালু রিটার্ন করে। এটি দেখানো কোড স্নিপেট নিচে:
int arr[] = {1,2,3,4,5};
printf("The elements of array: ");
for(int i = 0; i < 6; i++)
printf(" %d", arr[i]);