यह कोड क्यों अमान्य है?टाइपपीफ और गैर-साधारण प्रकार विनिर्देश
typedef int INT;
unsigned INT a=6;
जबकि निम्नलिखित कोड मान्य
typedef int INT;
static INT a=1;
है?
मेरी समझ के अनुसार unsigned int
"simple type specifier"
नहीं है और इसलिए कोड खराब है। हालांकि मुझे यकीन नहीं है।
कोई भी Standard
के प्रासंगिक खंड को इंगित कर सकता है जो पहले कोड को अमान्य बनाता है (और दूसरा कोड मान्य)?
संपादित
हालांकि Johannes Schaub's जवाब सही और बात करने के लिए लग रहा था (वह अपने उत्तर हटा दिया गया था BTW) मैं इसकी सत्यता और यथातथ्यता के लिए जेम्स कुरान का जवाब स्वीकार कर लिया।
जिज्ञासा से, आप ऐसा क्यों करेंगे? उस पुनर्वितरण के लिए बहुत अधिक कारण नहीं है। 'typedef unsigned int UINT; 'अधिक समझ में आ सकता है, हालांकि .... – JAB
हाँ जेएबी मुझे पता है कि, वास्तव में मैं इस तरह के कोड को व्यावहारिक रूप से कभी नहीं लिखूंगा। हालांकि मैं उत्सुक हूं कि पहला कोड क्यों काम नहीं करता है? तो सवाल को 'भाषा-वकील' भी टैग किया गया है। –
मुझे पता है कि यह प्राथमिक विषय नहीं है, लेकिन आप "std :: make_unsigned :: टाइप" लिख सकते हैं (देखें http://msdn.microsoft.com/en-us/library/ee361636.aspx?ppud=4) –
Tomaka17