"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > Std::locale का उपयोग करके C++ में अल्पविराम के साथ संख्याओं को कैसे प्रारूपित करें?

Std::locale का उपयोग करके C++ में अल्पविराम के साथ संख्याओं को कैसे प्रारूपित करें?

2024-11-07 को प्रकाशित
ब्राउज़ करें:536

How to Format Numbers with Commas in C   Using std::locale?

सी में अल्पविराम के साथ संख्याओं को फ़ॉर्मेट करना

सी में, std::locale वर्ग अल्पविराम के साथ संख्याओं को फ़ॉर्मेट करने के लिए एक स्थानीय-निर्भर तरीका प्रदान करता है .

std::locale with std::stringstream

किसी संख्या को अल्पविराम के साथ स्ट्रिंग के रूप में प्रारूपित करने के लिए, आप std::locale का उपयोग std::stringstream के साथ कर सकते हैं इस प्रकार:

#include 
#include 

template
std::string FormatWithCommas(const T& value) {
  std::stringstream ss;
  ss.imbue(std::locale(""));  // Use the system's locale
  ss 

उदाहरण उपयोग:

std::string result1 = FormatWithCommas(7800);
std::string result2 = FormatWithCommas(5100100);
std::string result3 = FormatWithCommas(201234567890);

// result1 = "7,800"
// result2 = "5,100,100"
// result3 = "201,234,567,890"

हैंडलिंग डबल्स

डबल को अल्पविराम के साथ एक स्ट्रिंग के रूप में प्रारूपित करने के लिए, आप ऊपर दिए गए समान दृष्टिकोण का उपयोग कर सकते हैं, लेकिन कोड होगा दशमलव बिंदु को संभालने की आवश्यकता है:

template
std::string FormatWithCommas(const T& value) {
  std::stringstream ss;
  ss.imbue(std::locale(""));
  ss 

अस्वीकरण:

ध्यान दें कि उपरोक्त समाधानों की पोर्टेबिलिटी एक समस्या हो सकती है, क्योंकि "" पारित होने पर उपयोग किया जाने वाला स्थान सिस्टम के आधार पर भिन्न हो सकता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3