जवाबों:
उपयोग:
#include <iostream>
...
std::cout << std::hex << a;
रहे हैं कई अन्य विकल्प सटीक उत्पादन संख्या के स्वरूपण नियंत्रित करने के लिए इस तरह के अग्रणी शून्य और ऊपरी / निचले मामले के रूप में,।
ios::fmtflags f(cout.flags());
इसके साथ राज्य को बचा सकते हैं और इसे बहाल कर सकते हैं out.flags(f);
।
std::cout.flags(f);
हेक्साडेसिमल में प्रिंट करने के लिए स्ट्रीम में हेरफेर करने के लिए मैनिपुलेटर का उपयोग करें hex
:
cout << hex << a;
डिफ़ॉल्ट रूप से हेक्साडेसिमल वर्ण लोअरकेस में आउटपुट होते हैं। इसे अपरकेस में बदलने के लिए uppercase
मैनिपुलेटर का उपयोग करें :
cout << hex << uppercase << a;
बाद में आउटपुट को वापस लोअरकेस में बदलने के लिए, nouppercase
मैनिपुलेटर का उपयोग करें :
cout << nouppercase << b;
nouppercase
आउटपुट को वापस दशमलव में बदलना है?
मैं समझता हूं कि यह वह नहीं है जो ओपी ने पूछा है, लेकिन मुझे अभी भी लगता है कि यह प्रिंटफ के साथ कैसे करना है। मैं लगभग हमेशा इसे std :: cout (यहां तक कि पिछले C बैकग्राउंड के साथ भी) का उपयोग करना पसंद करता हूं।
printf("%.2X", a);
'2' सटीकता को परिभाषित करता है, 'X' या 'x' मामले को परिभाषित करता है।
printf("hello\n")
बराबर है fprintf(stdout, "hello\n")
। अधिक उपयोगी रूप से, आप एक फ़ंक्शन के पास stdout
(या stdin
या stderr
) पास कर सकते हैं जो एक FILE*
तर्क लेता है ।
विभिन्न प्रकार के झंडे और मुखौटे हैं जिनका आप उपयोग कर सकते हैं। अधिक जानकारी के लिए कृपया http://www.cplusplus.com/reference/iostream/ios_base/setf/ देखें ।
#include <iostream>
using namespace std;
int main()
{
int num = 255;
cout.setf(ios::hex, ios::basefield);
cout << "Hex: " << num << endl;
cout.unsetf(ios::hex);
cout << "Original format: " << num << endl;
return 0;
}
std::hex
आपको हेक्स स्वरूपण मिलता है, लेकिन यह एक राज्य विकल्प है, जिसका अर्थ है कि आपको राज्य को बचाने और पुनर्स्थापित करने की आवश्यकता है या यह भविष्य के सभी आउटपुट को प्रभावित करेगा।
Naively वापस स्विच करने के std::dec
लिए केवल तभी अच्छा है यदि वह झंडे पहले थे, जो कि मामला नहीं हो सकता है, खासकर यदि आप एक पुस्तकालय लिख रहे हैं।
#include <iostream>
#include <ios>
...
std::ios_base::fmtflags f( cout.flags() ); // save flags state
std::cout << std::hex << a;
cout.flags( f ); // restore flags state
यह ग्रेग हेविल के जवाब और जानकारी को एक अन्य प्रश्न से जोड़ता है ।
का प्रयोग करें std::uppercase
और std::hex
प्रारूप पूर्णांक चर को a
हेक्साडेसिमल स्वरूप में प्रदर्शित किया जा सके।
#include <iostream>
int main() {
int a = 255;
// Formatting Integer
std::cout << std::uppercase << std::hex << a << std::endl; // Output: FF
std::cout << std::showbase << std::hex << a << std::endl; // Output: 0XFF
std::cout << std::nouppercase << std::showbase << std::hex << a << std::endl; // Output: 0xff
return 0;
}
cout << hex << a << dec;
इसे वापस बदलना चाहते हैं ।