दिलचस्प पोस्ट
ISNULL का उपयोग करके एक विशिष्ट निदान की जाँच करने के लिए COALESCE का उपयोग करना है? JQuery के अजाक्स अनुरोध प्रत्येक एक्स मिनट पर कॉल करें पीएचपी में कुछ विस्तार से फ़िल्टर्ड डीआईआर से फाइल प्राप्त करने का सर्वोत्तम तरीका प्रोग्रामात्मक रूप से एक UIScrollView स्क्रॉल करें विंडोज फॉर्म के लिए यूआई डिज़ाइन पैटर्न (जैसे एमपीवीएम के लिए एमवीवीएम) मैं Angularjs का उपयोग कर स्थानीय स्टोरेज में डेटा कैसे संग्रहीत करूं? फॉर्म जमा होने पर बटन सबमिट करें का मूल्य भेजें वर्चुअल डिस्ट्रक्टर्स का उपयोग कब करना है? #include <filename> और #include "filename" के बीच अंतर क्या है? अड़चन के साथ, मैं कैसे दबाव की एक श्रृंखला को "दबाव" से पहले एक में "संक्षिप्त" कर सकता हूँ? Django डेटाबेस क्वेरी: दिनांक सीमा से वस्तुओं को कैसे फ़िल्टर करें? उन फ़ाइलों को अनदेखा करें जो पहले से ही एक Git रिपॉजिटरी के लिए प्रतिबद्ध हैं कम.जेएस क्रोम में काम नहीं कर रहा है Android में getSharedPreferences का उपयोग कैसे करें MySQL बनाम पीडीओ

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

#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 में ठीक काम किया

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

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

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

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

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

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