Avatar ·

C++ में ऐरे का सही उपयोग कैसे करें: स्टैटिक से डायनेमिक और std::array तक

सभी को नमस्ते! मैंने Python के बाद C++ सीखना शुरू किया है और मेरे दिमाग में arrays को लेकर पूरी गड़बड़ी है। Python में मैं बस `arr = [1, 2, 3]` लिखता था और सब काम करता था। लेकिन यहाँ...\n\nमैं एक सरल प्रोग्राम बनाने की कोशिश कर रहा हूँ जो 5 नंबर स्टोर करे और उनका योग निकाले। मैंने ऐसे लिखा:\n\n```cpp\nint arr[5];\narr = {1, 2, 3, 4, 5};\n```\n\nलेकिन compiler error दे रहा है: "array type 'int[5]' is not assignable"। ठीक है, मैंने तुरंत initialize करने की कोशिश की:\n\n```cpp\nint arr[5] = {1, 2, 3, 4, 5};\n```\n\nयह काम कर गया। लेकिन फिर मुझे इस array को function में pass करना पड़ा। मैंने लिखा:\n\n```cpp\nvoid printSum(int arr[]) {\n int sum = 0;\n for(int i = 0; i < sizeof(arr)/sizeof(arr[0]); i++) {\n sum += arr[i];\n }\n cout << sum;\n}\n```\n\nऔर यहाँ तो बिल्कुल अजीब बात है — `sizeof(arr)` 8 return कर रहा है (pointer का size)

अभी तक कोई उत्तर नहीं।

लॉग इन करें उत्तर देने के लिए

ब्लॉग