मैं बाइट्स मूल्यों (सी # में डबल/नाव) बदलने और कुछ मदद की ज़रूरत है करने के लिए 'लंबी' ..
// डाटाटाइप लंबे 4byte -99999999,99 99999999,99
को // डाटाटाइप लंबे 4byte -99999999,9 को 99999999,9
// डाटाटाइप कम 2byte -999,99 999,99 के लिए
// डाटाटाइप कम 2byte -999,9 को 999,9
में मेरी " घर पर दुनिया "मैं बस इसे स्ट्रिंग और ASCII.GetBytes() होगा।
लेकिन अब, इस दुनिया में, हमें कम संभव स्थान बनाना है।
और वास्तव में '-99 99 99 99,99' 4 की बजाय 12 बाइट्स लेता है! अगर यह एक 'लंबा' डेटाटाइप है।Convert डेटाप्रकार बाइट सरणी
[संपादित करें]
कुछ मदद करने के लिए और जवाब मैं यहाँ कुछ परिणाम देते हैं कारण,
long lng = -9999999999L;
byte[] test = Encoding.ASCII.GetBytes(lng.ToString()); // 11 byte
byte[] test2 = BitConverter.GetBytes(lng); // 8 byte
byte[] mybyt = BitConverter.GetBytes(lng); // 8 byte
byte[] bA = BitConverter.GetBytes(lng); // 8 byte
अभी भी एक विस्तार पता लगाने के लिए छोड़ दिया रहना होगा। Lng-variabel को 8 बाइट मिलते हैं, भले ही इसमें कम मान हों, यानी 99 951 (मैं ToString() नमूना शामिल नहीं करूंगा)।
यदि मान भी "छोटा" है, जिसका अर्थ है- 999,99 - 999,99 इसमें केवल 2 बाइट स्पेस लगेगा।
[अंत संपादित करें]
आप जानते हैं कि लंबे और छोटे अभिन्न प्रकार हैं, इसलिए कोई दशमलव नहीं है, है ना? और वह लंबा 8 बाइट है, 4 नहीं! वह "int" है। – xanatos
मुझे आश्चर्य है कि प्रश्न कितने जवाब हैं जब सवाल भी समझ में नहीं आता है। उसे क्या मिला है और वह क्या पाने की कोशिश कर रहा है? –
@xanatos आपका बिंदु उल्लेख करने लायक है। मूल्य शुरुआत में तैरते हैं (लेकिन यह एक और सवाल है)। – Independent