c++ - Why does ICU's Locale::getDefault() return "root"? -


सी ++ के साथ आईसीयू लाइब्रेरी का प्रयोग कर रहा हूं:

  चार कॉन्स्ट * लैंग =   

अगर मैं एक छोटा परीक्षण कार्यक्रम लिखता हूं और इसे अपने मैक सिस्टम पर चलाता हूं, तो मुझे en के लिए lang मिलता है। हालांकि, एक बड़े समूह प्रोजेक्ट के अंदर मैं काम कर रहा हूं, मुझे root मिलता है किसी को भी कोई विचार क्यों है? मुझे यह पता चला है:

तो मेरा अनुमान यह है कि, जब बड़ी प्रणाली के तहत चल रहे हैं, कुछ आईसीयू संसाधन नहीं मिल रहे हैं, लेकिन मुझे नहीं पता कि संसाधन क्या हैं,

अतिरिक्त जानकारी

/ usr / bin / locale रिटर्न:

पूर्व> LANG = "en_US.ISO8859-1" LC_COLLATE = "C" LC_CTYPE = "C" LC_MESSAGES = "C" LC_MONETARY = "C" LC_NUMERIC = "C" LC_TIME = "सी" LC_ALL = "C" < / Code>

अगर मैं एक छोटा सी प्रोग्राम लिखता हूं:

  चार कॉन्स्ट- lang = setlocale (LC_ALL, ""):  
< पी> मुझे en_US.ISO8859-1 मिलता है।

ओएस : मैक ओएस एक्स 10.6.4 (हिम तेंदुए)
आईसीयू संस्करण : 4.3.4 (MacPorts के माध्यम से नवीनतम उपलब्ध)।

एक छोटी सी मदद? धन्यवाद।

जड़ निश्चित रूप से एक अजीब डिफ़ॉल्ट लोकेल है - आप इन मूल निवासी वक्ताओं को नहीं देखते हैं

लेकिन गंभीरता से, क्या यह बड़ी व्यवस्था को मानने के लिए सुरक्षित है कि किसी ने setDefault ("root") के वेरिएंट नहीं बुलाया है ?

इस प्रणाली पर / usr / bin / locale रिटर्न क्या होता है (यदि आप इसे चला सकते हैं)?

आईसीयू 4.4 में अब ' आईसीयूइन्फो ', क्या यह मूल स्थान के रूप में रूट भी लौटाता है?

ओएस / प्लेटफॉर्म क्या है, और आईसीयू किस संस्करण का है?


Comments