/ / मेरे धागे के लिए लोकेल नाम कैसे प्राप्त करें? - सी ++, सी, विंडोज़, winapi, सीआरटी

मेरे धागे के लिए लोकेल नाम कैसे प्राप्त करें? - सी ++, सी, विंडोज़, winapi, सीआरटी

कहें, मैं अपने सी प्रोग्राम से लोकेल सेट कर सकता हूं _create_locale जैसे की:

localeUS = _create_locale(LC_ALL, "English_United States.1252");

लेकिन मुझे जो चाहिए वह विपरीत है, यानी कॉलिंग थ्रेड के लिए लोकेल नाम (उपरोक्त फ़ंक्शन का दूसरा तर्क) पुनर्प्राप्त करने के लिए। कोई विचार यह कैसे करना है?

पुनश्च। मुझे पता है कि आधुनिक विंडोज एलसीआईडी ​​का उपयोग करता है। मुझे पुराने कोड के साथ संगतता के लिए इस लोकेल नाम की आवश्यकता है।

उत्तर:

जवाब के लिए 3 № 1

उम्मीद है कि आप मानक सी ++ का उपयोग कर सकते हैं।

से std :: स्थान :: नाम:

उदाहरण

#include <locale>
#include <iostream>
#include <string>

int main()
{
std::locale loc(std::locale(), new std::ctype<char>);
std::cout << "The default locale is " << std::locale().name() << "n"
<< "The user"s locale is " << std::locale("").name() << "n"
<< "A nameless locale is " << loc.name() << "n";
}

आउटपुट:

The default locale is C
The user"s locale is en_US.UTF8
A nameless locale is *