2016-03-29 21 views
5

मैंने यह post पढ़ा है। हालांकि, मुझे निम्नलिखित घोषणा के लिए अर्थ नहीं मिल सका।सी ++ मल्टी आयामी सरणी अनुक्रमण

चलें कहना मैं घोषणा इस:

Declaration 1: int jimmy [HEIGHT][WIDTH]; 

    Accessing 1: jimmy[n][m] 

Declaration 2: int jimmy [HEIGHT * WIDTH]; 


Accessing 2: jimmy[n*WIDTH+m] 

घोषणा 1 और 1 तक पहुँचने, और घोषणा 2 और 2 तक पहुँचने ही src हैं।

हालांकि, अर्थ क्या है [एन, एम]? मैंने कोड लिखा है जो मुझे पता देता है। कोई उपयोगी जानकारी नहीं मिल सका। क्या कोई कह सकता है इसका क्या अर्थ है?

+2

भी देखें: [विकी] (https://en.wikipedia.org/wiki/Comma_o पेटर) [cppref] (http://en.cppreference.com/w/cpp/language/operator_other#Built-in_comma_operator) – Drop

+0

[कॉमा ऑपरेटर कैसे काम करता है] (http://stackoverflow.com/q/54142/ 995714), [अल्पविराम ऑपरेटर का उचित उपयोग क्या है?] (Http://stackoverflow.com/q/17902992/995714), [कॉमा ऑपरेटर को अधिभारित करने के लिए कब?] (Http://stackoverflow.com/q/5602112/९,९५,७१४) –

उत्तर

8

सी ++ में एक अल्पविराम ऑपरेटर है जो बाईं ओर की चीज़ का मूल्यांकन करता है, वापसी मूल्य को छोड़ देता है, और उसके बाद दाईं ओर की चीज़ का मूल्यांकन करता है।

आप (http://ideone.com/hpQxWI देख)

int i = (1, 2, 3, 4); 
std::cout << i; 

लिख सकता है और आप प्रिंट होगा बाहर 4.

तो

jimmy[n,m] 

मतलब है

jimmy[m] 
संबंधित मुद्दे