सवाल सी # में चार से int


आईटीएफ 16 में इंट वैल्यू को संबंधित चार्ट में कनवर्ट करने का सबसे अच्छा तरीका क्या है, यह देखते हुए कि इंट वैध मानों की सीमा में है?


76
2017-11-14 11:07


मूल




जवाब:


(char)myint;

उदाहरण के लिए:

Console.WriteLine("(char)122 is {0}", (char)122);

पैदावार:

(चार) 122 जेड है


111
2017-11-14 11:16



यह एक बुरा जवाब है। सी = (चार) 49 1 नहीं '1' है - nykwil
@nykwil मुझे जिमेल के जवाब के साथ कुछ भी गलत नहीं दिख रहा है। - Tom Lint
@nykwil - यह गलत जानकारी है। Console.WriteLine((char)49 == '1'); दे देंगे सच। जैसा चाहो char c = (char)49; string s = "1two3"; Console.WriteLine(c == s[0]); इस कास्ट का उपयोग पूरी तरह से ठीक है। आपका स्पष्टीकरण काम नहीं कर रहा है इसका एक वैध उदाहरण प्रदान नहीं करता है। इसके अलावा, Console.WriteLine((char)49 == 1); है असत्य जो अनिवार्य रूप से आपकी टिप्पणी आधारहीन बनाता है। - Travis J


int i = 65;
char c = Convert.ToChar(i);

51
2017-11-14 11:15



कनवर्ट करें। टोकर अंततः "(char) मान" के रूप में एक स्पष्ट रूपांतरण करता है, जहां "मान" आपका int मान है। ऐसा करने से पहले, यह सुनिश्चित करने के लिए जांच करता है कि "मान" 0 से 0xffff की सीमा में है, और अगर यह नहीं है तो ओवरफ्लो एक्सेप्शन फेंकता है। अतिरिक्त विधि कॉल, मान / सीमा जांच, और ओवरफ्लो एक्सेप्शन उपयोगी हो सकता है, लेकिन यदि नहीं, तो प्रदर्शन बेहतर होगा यदि आप "(char) मान" का उपयोग करते हैं। - Triynko


यद्यपि प्रश्न के रूप में बिल्कुल सही सवाल का जवाब नहीं दे रहा है, लेकिन अगर आपको अंतिम परिणाम की आवश्यकता है या स्ट्रिंग के रूप में आप इसका उपयोग कर सकते हैं

string s = Char.ConvertFromUtf32(56)

यदि आपको आवश्यकता हो तो आपको सरोगेट यूटीएफ 16 जोड़े मिलेंगे, अगर आप बाहर हैं तो आपको सुरक्षित रखें बीएमपी


14
2017-11-14 12:44