दिलचस्प पोस्ट
क्रॉस प्लेटफार्म Java SWT अनुप्रयोग बनाएँ iBeacon अधिसूचना जब ऐप नहीं चल रहा है iPhone कोर डेटा की बचत करते समय अनसुलझे त्रुटि पायथन वैरिएबल संदर्भ असाइनमेंट ईक्लिप्स से रिमोट डिप्लोमा टॉमकेट वेबएप एकाधिक सीमांकक पर आधारित स्ट्रिंग विभाजित करें केवल मानक पुस्तकालय का उपयोग करते हुए गठबंधन मेमोरी आवंटित करने के लिए कैसे? एंड्रॉइड स्टूडियो 1.3 में प्रॉक्सी के पीछे स्टैक स्मैशिंग का पता चला एएसपी.नेट एमवीसी में एक गतिशील नियंत्रक और क्रिया विधि कैसे प्राप्त करें? "रेंडर करने के बाद" कोड पर प्रतिक्रिया दें? डीजेन्गो – एक सूची को एक क्वेरी में वापस परिवर्तित करें वस्तु उन्मुख जावास्क्रिप्ट सर्वश्रेष्ठ प्रथाओं? ईमेल HTML कोड बनाने के लिए सीएसएस शैली को स्वचालित रूप से इनलाइन करने के लिए कौन से उपकरण हैं? एएसपी.नेट एमवीसी 4 कस्टम ऑथराइज एट्रिब्यूट – अनधिकृत उपयोगकर्ताओं को त्रुटि पेज पर दिशानिर्देश कैसे करें?

सी ++ पुस्तकों में, सरणी बाध्य होना निरंतर अभिव्यक्ति होनी चाहिए, लेकिन निम्नलिखित कोड क्यों काम करता है?

#include <iostream> using namespace std; int main(){ int n=10; int a[n]; for (int i=0; i<n; i++) { a[i]=i+1; cout<<a[i]<<endl; } return 0; } 

मैक के तहत Xcode4 में ठीक काम किया

जैसा कि किताबों में कहा, यह गलत होना चाहिए, क्यों?

इतना उलझन में ~

Solutions Collecting From Web of "सी ++ पुस्तकों में, सरणी बाध्य होना निरंतर अभिव्यक्ति होनी चाहिए, लेकिन निम्नलिखित कोड क्यों काम करता है?"

यह एएलए C99 फीचर जिसे वीएलए कहा जाता है, कुछ कम्पाइलर भी सी ++ में अनुमति देते हैं। यह स्टैक पर आवंटन है, जैसे कि यह int a[10] साथ होगा int a[10]

यह C99 सुविधा है जो VLA (चर लंबाई सरणी) की अनुमति देता है।

इसे g++ -pedantic साथ संकलित करें, मुझे यकीन है कि संकलन नहीं होगा।