इस कोड को संकलित करता है में एक ही नाम के साथ एक चर का उपयोग करना है, लेकिन मेरे पास है Visual Studio में एक रन समय त्रुटि:विभिन्न रिक्त स्थान
रन-समय जांच विफलता # 3 - चर 'एक्स' के बिना किया जा रहा है प्रारंभ किया जा रहा ...
int x = 15;
int main()
{
int x = x;
return 0;
}
मुझे लगता है कि व्यवहार ... त्रुटि बॉक्स में समझ में नहीं आता है जब मैं जारी रखने के लिए क्लिक करें कार्यक्रम शुरू और एक्स कोई दूषित सामग्री (15
की तरह -8556328
बजाय) है।
यह कोड बिना किसी समस्या के काम करता है, और int सरणी अच्छी तरह से घोषित की जाती है?
const int x = 5;
int main()
{
int x[x] = {1,2,3,4};
return 0;
}
लिखने की आवश्यकता है आपने सी और सी ++ दोनों को टैग किया है। आपने किस संकलन किया? –
कुछ दिलचस्प तथ्यों: 'gcc 4.8.4', संकलित और इस प्रोग्राम को '-Wall -Wextra -pedantic' चालू किया जा सकता है। 'clang 7.0.0' इसे संकलित करता है, और इसे चलाया जा सकता है। हालांकि अगर 'printf ("% d \ n", x);' int x = x; 'के बाद जोड़ा गया है (मुझे लगता है कि' x' का वास्तविक उपयोग), संकलक अधिक अनुकूल चेतावनी देता है: 'चेतावनी: चर 'x' अनियमित है जब अपने प्रारंभिकरण में उपयोग किया जाता है [-नुनिनिश्लाइज्ड] '। 'gcc' अभी भी संकलित करता है और इसे 'printf' और मुद्रित' 0' के साथ भी चलाता है। हालांकि वालग्रिंड के माध्यम से कार्यक्रम चलाते हुए 'सशर्त कूद या चाल' अनियमित मूल्य (ओं) ' – Joakim
@ जोकीम पर निर्भर करता है: दिलचस्प; परिणामों के लिए धन्यवाद।क्या जीसीसी और क्लैंग उनके अधिकारों में हैं, यानी यह कैननिक रूप से अपरिभाषित व्यवहार है? –