जवाबों:
"यू" के साथ उपसर्गित आदिम डेटा प्रकार एक ही बिट आकार के साथ अहस्ताक्षरित संस्करण हैं। प्रभावी रूप से, इसका मतलब है कि वे नकारात्मक संख्याओं को संग्रहीत नहीं कर सकते हैं, लेकिन दूसरी ओर वे सकारात्मक संख्याओं को अपने हस्ताक्षरित समकक्षों से दो बार बड़े स्टोर कर सकते हैं। हस्ताक्षरित समकक्षों में "यू" उपसर्ग नहीं है।
Int (32 बिट) के लिए सीमाएं हैं:
int: –2147483648 to 2147483647
uint: 0 to 4294967295
और लंबे समय तक (64 बिट):
long: -9223372036854775808 to 9223372036854775807
ulong: 0 to 18446744073709551615
uintऔर ulongकी अहस्ताक्षरित संस्करण हैं intऔर long। इसका मतलब है कि वे नकारात्मक नहीं हो सकते। इसके बजाय उनका बड़ा अधिकतम मूल्य है।
टाइप मिन मैक्स सीएलएस-अनुपालन int -2,147,483,648 2,147,483,647 हाँ uint 0 4,294,967,295 नहीं लंबी –9,223,372,036,854,775,808 9,223,372,036,854,775,807 हाँ उलंग 0 18,446,744,073,709,551,615 नहीं
अपने स्रोत कोड में शाब्दिक अहस्ताक्षरित int लिखने के लिए आप प्रत्यय का उपयोग कर सकते हैं uया Uउदाहरण के लिए 123U।
यदि आप सीएलएस-शिकायत करना चाहते हैं तो आपको अपने सार्वजनिक इंटरफ़ेस में यूंट और अलॉन्ग का उपयोग नहीं करना चाहिए ।
अधिक जानकारी के लिए प्रलेखन पढ़ें:
वैसे, शॉर्ट और यूथॉर्ट और बाइट और सोबेट भी है ।
uइसका मतलब है unsigned, ulongबिना हस्ताक्षर के एक बड़ी संख्या है। आप में ulongसे एक बड़ा मूल्य संग्रहीत कर सकते हैं long, लेकिन कोई नकारात्मक संख्या की अनुमति नहीं है।
एक longमान 64-बिट में संग्रहीत किया जाता है, इसके पहले अंक के साथ यह दिखाने के लिए कि क्या यह एक सकारात्मक / नकारात्मक संख्या है। जबकि ulong64-बिट भी है, सभी 64 बिट के साथ संख्या को स्टोर करने के लिए। इसलिए अधिकतम 2 (64) -1 है, जबकि लंबा 2 (63) -1 है।
अंतर यह है कि uintऔर ulongअहस्ताक्षरित डेटा प्रकार हैं, जिसका अर्थ सीमा अलग है: वे नकारात्मक मानों को स्वीकार नहीं करते हैं:
int range: -2,147,483,648 to 2,147,483,647
uint range: 0 to 4,294,967,295
long range: –9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
ulong range: 0 to 18,446,744,073,709,551,615