c++ - 2 dimensional array in pointers -


  # शामिल हैं & lt; stdio.h & gt; शून्य मुख्य () {int a [] = {1, 2, 3, 4}; Int b [] = {5, 6, 7}; Int * p [2]; पी [0] = ए; पी [1] = और amp; बी + 1; प्रिंटफ़ ("% d \ n% d", & amp; पी [1] [0], पी [0] [1]); }   

यहाँ p पॉइंटर्स के एक 1d सरणी है, फिर कैसे एक 2d सरणी printf स्टेटमेंट में उपयोग की जाती है इसके अलावा आउटपुट 1 2

सबस्क्रिप्ट ऑपरेटर [ ] सूचक संकेतों के साथ-साथ सरणी अभिव्यक्तियों के लिए भी परिभाषित किया गया है (जो सर्वप्रथम लागू होने से पहले सूचक अभिव्यक्ति में कनवर्ट किया जाता है)।

अभिव्यक्ति एक [i] को * (a + i) के रूप में मूल्यांकन किया जाता है; a एक सूचक है, और a + i सरणी के i 'th तत्व का पता देता है ( पॉइंटर अंकगणित को इंगित-टू टाइप पर आधारित है; यदि a एक int को इंगित करता है, तब a + i मैं 'th int एक a द्वारा इंगित किया गया है)।

तो संकेतकों की अपनी सरणी दी:

  int * p [2];   

अभिव्यक्ति p [0] में एक सूचक प्रकार है, ताकि आप परिणाम ऑफसेट और डीरेफर जोड़ सकते हैं: * (p [0] + 1) , जो p [0] [1] लिखने के समान है।

Comments

Popular posts from this blog

php - PDO bindParam() fatal error -

logging - How can I log both the Request.InputStream and Response.OutputStream traffic in my ASP.NET MVC3 Application for specific Actions? -

java - Why my included JSP file won't get processed correctly? -