objective c - Array subscript is not an integer -
<पूर्व>
int i; Va_list ऑब्जेक्ट_सूची; Va_start (ऑब्जेक्ट_लिस्ट, ऑब्जेक्ट); के लिए (आईडी ओ = ऑब्जेक्ट्स, आई = 0; ओ! = नाइल; ओ = वीए_आर्ग (ऑब्जेक्ट_लिस्ट, आईडी), आई ++); ऑब्जेक्ट्सएअररे = मॉलोक (साइज़फ (आईडी) * आई); va_end (objects_list); // ... (malloc NULL जांच यहाँ है, इसमें शामिल नहीं है I) va_start (ऑब्जेक्ट_लिस्ट, ऑब्जेक्ट्स); के लिए (आईडी ओ = ऑब्जेक्ट्स, आई = 0; ओ! = शून्य; ओ = वीए_आर्ग (ऑब्जेक्ट_लिस्ट, आईडी), आई ++) {ऑब्जेक्ट्स इनरात्र [आई] = ओ; } Va_end (ऑब्जेक्ट_लिस्ट); मुझे एक आरे सबस्क्रिप्ट एक पूर्णांक त्रुटि objectsInArray [i] = o; लाइन पर नहीं मिल रहा है objectsInArray को id * objectsInArray के रूप में घोषित किया जाता है। i एक int है, इसलिए क्यों मुझे यह त्रुटि मिल रही है और मैं इसे कैसे ठीक कर सकता हूं? अग्रिम धन्यवाद।
i प्रकार id लूप के भीतर अस्पष्ट सिंटैक्स को हल करने के लिए, id o के लिए के लिए (...) कथन घोषित करें। Xcode में, परियोजना सेटिंग्स के तहत, सक्षम करें "छिपे हुए स्थानीय चर" के लिए चेतावनियां, इसलिए संकलक ऐसे चीजों के लिए चेतावनी देगा। अन्यथा, जीसीसी का उपयोग करते समय, -Wshadow का उपयोग करें।
Comments
Post a Comment