c++ - Variable changed value suddenly after Loop -


मुझे nablist नामक मैट्रिक्स के साथ एक समस्या है जब मैंने nablist को पहले प्रिंट में मुद्रित किया था तो nablist बिल्कुल सही था, लेकिन जब मैंने इसे फिर से मुद्रित किया तब मूल्य पूरी तरह गलत थे। मुझे विश्वास है कि समस्या पंक्ति में है:

  nablist [i, nnab [i]] = j   

क्योंकि मैंने सूचक को सूचक के रूप में रखने की कोशिश की । किसी भी विचार?

मेरे पास निम्न कोड है:

  #include & lt; stdio.h & gt; # शामिल & lt; windows.h & gt; int main (int argc, char ** argv) int n = 902; Int i, j; Int * nnab = नया इंट [एनएमएक्स]; Int * nablist = नया इंट [एनएमएक्स, 6]; के लिए (i = 0; i & lt; n; i ++) {nnab [i] = 0; के लिए (जे = 0; जम्मू & lt; 6; j ++) {nablist [i, j] = 0; }} के लिए (i = 0; i & lt; n-1; i ++) {for (j = i + 1; j & lt; n; j ++) {nnab [i] = nnab [i] +1; nablist [मैं, nnab [i]] = j; अदालत के & lt; & lt; nablist [मैं, nnab [i]] के & lt; & lt; endl; // पहला प्रिंट}} के लिए (i = 0; i & lt; n-1; i ++) {cout & lt; & lt; nablist [i, nnab [i]] & lt; & lt; endl; // दूसरा प्रिंट}}   

आपके उत्तर के लिए धन्यवाद हां समस्या यह थी कि मुझे चौकोर ब्रैकेट के एक से अधिक जोड़े का उपयोग करना होगा। मैंने int (* ptr) [5] = new int [5] [10]; का उपयोग करने की कोशिश की लेकिन मुझे एक त्रुटि थी मैं n पंक्तियों और एम स्तंभों के साथ 2 डी सरणी को परिभाषित करना चाहता हूं मैं 2 डी सरणी को परिभाषित करने के लिए n, m चर पढ़ने के लिए एक टेक्स्ट फ़ाइल का उपयोग करना चाहता हूं..मैं यह कैसे कर सकता हूं? क्या आप मेरा मतलब समझ सकते हैं? धन्यवाद

निम्न चेतावनियों को ठीक करने का प्रयास करें:

 % g ++ Test.cpp -Wall test.cpp: फ़ंक्शन में- int main (int, char **) एक: test.cpp: 13: 27: चेतावनी: कॉमा ऑपरेटर के बाएं ऑपरेंड का कोई प्रभाव नहीं है [ -वियुक्स्ड-मान] int * nablist = new int [nmax, 6]; ^ Test.cpp: 21: 17: चेतावनी: कॉमा ऑपरेटर के बाएं ऑपरेंड का कोई प्रभाव नहीं है [-विमुक्त-मान] nablist [i, j] = 0; ^ Test.cpp: 30: 24: चेतावनी: कॉमा ऑपरेटर के बाएं ऑपरेंड का कोई प्रभाव नहीं है [-वियुक्स्ड-मान] nablist [i, nnab [i]] = j; ^ Test.cpp: 31: 30: चेतावनी: कॉमा ऑपरेटर के बाएं ऑपरेंड का कोई प्रभाव नहीं है [-वियुक्स्ड-वैल्यू] cout & lt; & lt; nablist [i, nnab [i]] & lt; & lt; endl; // पहले प्रिंट ^ test.cpp: 37: 28: चेतावनी: छोड़ दिया ऑपरेंड ऑफ़ कॉमा ऑपरेटर का कोई असर नहीं है [-वियुक्स्ड-मान] कॉट & लेफ्टिनेंट; & lt; nablist [i, nnab [i]] & lt; & lt; endl; // दूसरा प्रिंट   

आपको कॉमा ऑपरेटर के बारे में दस्तावेज़ीकरण पढ़ना चाहिए। विकिपीडिया का कहना है:

सी और सी ++ प्रोग्रामिंग भाषाओं में, कॉमा ऑपरेटर (टोकन द्वारा दर्शाया गया) एक द्विआधारी ऑपरेटर होता है जो इसका पहला ऑपरेंड मूल्यांकन करता है और नतीजे को निकाल देता है, और फिर दूसरे का मूल्यांकन करता है Operand और इस मान (और प्रकार) को रिटर्न करता है।

और इंटरनेट पर सी / सी ++ में एक 2-आयामी सरणी कैसे करें।

Comments

Popular posts from this blog

python - Writing Greek in matplotlib labels, titles -

c# - LINQ to Entities does not recognize the method 'Int32 IndexOf(System.String, System.StringComparison)' method -

Pygame memory leak with transform.flip -