2010-07-16 6 views
6

मैं अपने VB.NET कोड में, एक लाइब्रेरी कॉल, setInstance(ByVal instance As UInteger) का उपयोग कर रहा हूं। मुझे जिस पैरामीटर को पास करने की आवश्यकता है वह Integer है। क्या पूर्णांक पैरामीटर को एक हस्ताक्षरित पूर्णांक में बदलने के लिए मुझे कुछ करने की ज़रूरत है? संख्या सकारात्मक होने की गारंटी है और 10 से कमVB.NET में हस्ताक्षरित पैरामीटर के रूप में पूर्णांक कैसे पास करें?

उत्तर

7

तो जैसा ...

Dim MyInt As Int32 = 10 
Dim MyUInt As UInt32 = CUInt(MyInt) 
setInstance(MyUInt) 
2

आप एक चर को UInteger में परिवर्तित करने के लिए CUint पर कॉल कर सकते हैं।

3

CUInt या CTYPE (एक्स, uint) एक सकारात्मक पूर्णांक परिवर्तित करने की अनुमति देते हैं।

एक्स नकारात्मक होने पर यह अपवाद फेंकता है।

uint के रूप में इंट का उपयोग करने के लिए आपको कुछ तरकीबें उपयोग कर सकते हैं: सरणियों के लिए

dim bb() = System.BitConverter.GetBytes(myInt) 
    dim MyUint = System.BitConverter.ToUInt32(bb, 0) 
System.Buffer.BlockCopy साथ

इसके अलावा।

आप को निष्क्रिय करने के पूर्णांक अतिप्रवाह (सी # के लिए डिफ़ॉल्ट) की जाँच करें संकलक कॉन्फ़िगर करते हैं। फिर आप CUInt का उपयोग नकारात्मक मानों के साथ कर सकते हैं बिना चेक अप - अपवाद।

संबंधित मुद्दे