इस topic के अनुसार, एक सरणी वस्तु के अंतिम तत्व के बाद एक के साथ सूचक की तुलना अनुमति दी है।सूचक तुलना ">" एक के साथ पहले एक सरणी के पहले तत्व आपत्ति
और करने के लिए @jalf टिप्पणी, एक सरणी वस्तु के पहले तत्व से पहले एक के साथ सूचक की तुलना अनुसार मना किया है।
example1
int array[10];
int *ptr;
for(ptr=&array[9]; ptr>(array-1); ptr--) {...}
example2
int array[10];
int *ptr;
for(ptr=&array[9]; ptr>=(array); ptr--) {...}
1) दोनों example1 और example2 मना कर रहे हैं?
2) क्या सी मानक से प्रमाण है कि के साथ पॉइंटर की तुलना किसी सरणी ऑब्जेक्ट के पहले तत्व से पहले एक है?
कारण के कारण: विशेष 2 तत्वों का उपयोग करके तत्वों (सरणी के भीतर) के सभी स्लाइसों का प्रतिनिधित्व करने की अनुमति देता है। यदि आप स्लाइस के पहले और अंतिम तत्व को इंगित करना चाहते थे, तो आप खाली टुकड़े का प्रतिनिधित्व नहीं कर सके; लेकिन एक प्रतिनिधित्व के रूप में आधे खुली रेंज के द्वारा, आप कर सकते हैं: '[पी, पी) 'एक खाली टुकड़ा का प्रतिनिधित्व करता है। –