C++ Using "putchar" to output a word in Binary -
मेरा फ़ंक्शन:
शून्य आउटपुट (int word) {file & lt; & lt; पुच्चर ((शब्द & gt; 24) & amp; 0xff); फ़ाइल & lt; & lt; पुच्चर ((शब्द & gt; & gt; 16) & amp; 0xff); फ़ाइल & lt; & lt; पुच्चर ((शब्द & gt; 8) & amp; 0xff); फ़ाइल & lt; & lt; पुच्चर (शब्द और 0xff); } जहां "फाइल" का उपयोग फास्ट्रीम का उपयोग बाइनरी को पुच्चर से "बाइनरी.बीन" नामक फ़ाइल में आउटपुट करने के लिए करता है। जब "शब्द" 1 है, तो द्विआधारी का द्विआधारी प्रतिनिधित्व है। बीबी 00110000 00110000 00110000 00110001 है।
यह 00000000 00000000 00000000 00000001 होना चाहिए था। (नोट: एक शब्द 32 बिट है)
00110000 00110000 00110000 00110001 0001 (30 30 30 31) का आस्की प्रतिनिधित्व है।
क्या गलत हो गया?
समस्या ऑपरेटर & lt; & lt; है। स्ट्रीम प्रविष्टि ऑपरेटर को उसके इनपुट को टेक्स्ट प्रारूप में कनवर्ट करने और स्ट्रीम में स्वरूपित पाठ पास करने के लिए डिज़ाइन किया गया है। <पूर्व> फ़ाइल & lt; & lt; पुच्चर ((शब्द & gt; 24) & amp; 0xff); ^^ ---- & gt; यही समस्या है। आपको एक स्ट्रीम विधि का उपयोग करने की आवश्यकता होगी जो अनुवाद को निष्पादित नहीं करती है, जैसे std :: ostream :: put या std :: ostream । इसके साथ ही, ध्यान रखें कि putchar फ़ंक्शन कंसोल से अपना तर्क लिखता है और सफल होने पर तर्क देता है।
देखें
Comments
Post a Comment