If programmer accidentally writes loop iterations more than memory size of an array then array will not check its boundary or limit and Therefore loop iterations can able to overwrite and access outside values stored in memory. It is a critical problem known as array bound checking problem. Other high level languages like c++,Java etc throws an exception for array bound checking problem.
यदि प्रोग्रामर गलती से लूप का दोहराव, अरे के मेमोरी साइज़ से अधिक रख देता है तब अरे द्वारा अपनी बाउंड्री/ सीमा को जाँचा नहीं जाता है एवं लूप अरे की सीमा के बाहर उपस्थित वैल्यू को भी परिवर्तित या एक्सेस कर सकता है इस समस्या को अरे बाउंड चेकिंग प्रॉब्लम कहा जाता है यह एक गंभीर समस्या है जिसे C++ एवं JAVA प्रोग्रामिंग लैंग्वेज में एक्सेप्शन की सहायता से दूर किया गया है।
Example :-
'C' program for array bound checking problem.void main(){
int list[5],i;
printf("enter values of list array\n");
for(i=0;i<500;i++)
scanf("%d",&list[i]);
printf ( "values of list array\n");
for (i=0;i<500;i++)
printf( "list [%d]=%d\n",i,list[i]);
}
Hence, it is responsibility of programmer to execute loop iteration up to the maximum size of given array.
अत: यह प्रोग्रामर की जिम्मेदारी होती है कि वो लूप को लिखने से पूर्व अरे की सीमाए जाँच ले।
No comments:
Post a Comment