जवाबों:
उपयोग:
#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;इसे वापस बदलना चाहते हैं ।