জাভার মতো একটি ভাষায়, একটি ব্যতিক্রম যেমন java.lang.ArrayIndexOutOfBoundsException একটি অ্যারে সীমার বাইরে অ্যাক্সেস করা হলে ঘটতে পারে। কিন্তু C-তে তেমন কোনো কার্যকারিতা নেই এবং কোনো অ্যারে সীমার বাইরে অ্যাক্সেস করা হলে অনির্ধারিত আচরণ ঘটতে পারে।
একটি প্রোগ্রাম যা এটি সি তে প্রদর্শন করে তা নিম্নরূপ দেওয়া হল।
উদাহরণ
#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
এখন আসুন উপরের প্রোগ্রামটি বুঝতে পারি।
অ্যারে অ্যারে কেবলমাত্র সাবস্ক্রিপ্ট 4 পর্যন্ত মান নির্ধারণ করেছে। সুতরাং যখন অ্যারের উপাদানগুলি প্রিন্ট করা হয়, তখন 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]);