国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

當(dāng)LC_ALL等于C以后

2019-11-11 01:16:11
字體:
供稿:網(wǎng)友

在非英文linux系統(tǒng)上進行軟件安裝或配置時候,相信大家或多或少的都會遇到locale name not valid或warning:setlocale: LC_CTYPE: cannot change locale的錯誤信息吧。我也常遇到類似的問題,最近的一個例子就是在非英文Linux環(huán)境安裝AUT的agent后,無法正常啟動。Error log不斷提示localhost:locale::facet::_S_create_c_locale name not valid。

 

說到這里,就先接單介紹下LC吧,它是Linux系統(tǒng)中多語言環(huán)境的設(shè)置接口,按照所涉及文化的各個方面分成12大類,分別是:

1. LC_CTYPE

用于字符分類和字符串處理,控制所有字符的處理方式,包括字符編碼,字符是單字節(jié)還是多字節(jié),如何打印等。

2. LC_NUMERIC

設(shè)置非貨幣數(shù)字的顯示格式。

3. LC_COLLATE

指定該環(huán)境的排序和比較規(guī)則。

4. LC_TIME

定義系統(tǒng)時間和日期格式。

5. LC_MONETARY

規(guī)定貨幣符號格式。

6. (LC_MESSAGES)

提示信息包括錯誤,狀態(tài),標(biāo)題,標(biāo)簽,按鈕和菜單等。另外還有一個LANGUAGE參數(shù),它與LC_MESSAGES相似,一旦LANGUAGE參數(shù)進行了設(shè)置,則LC_MESSAGES參數(shù)就會失效。

7. LC_NAME

姓名的展示方式。

8. LC_ADDRESS

地址的展示方式。

9. LC_TELEPHONE

電話號碼的展示方式。

10. LC_MEASUREMENT

度量衡的展示方式 。

11. LC_PAPER

默認(rèn)紙張尺寸大小。

12. LC_IDENTIFICATION

對locale自身包含信息的概述。

 

除此之外,還有兩個變量

·        LANG

LC_*的默認(rèn)值,是最低級別的設(shè)置,如果LC_*沒有設(shè)置,則使用該值。

·        LC_ALL

這是一個宏,如果設(shè)置了該值,則所有LC_*變量的值都會被覆蓋。但需要注意的是LANG的值不受該宏影響。

它們之間的優(yōu)先級關(guān)系是這樣的,LC_ALL> LC_* >LANG。

 

回到該問題本身,Dev fix bug的示意代碼如下,相當(dāng)?shù)暮啙嵏咝?,不是么?直接set LC_ALL的值為C。

int main(int argc, char* argv[] ){   // any LC_*variable set to invalid value (for ex: LC_CTYPE=SJDH) it will   // throw exception,so setting environment variable LC_ALL=C, will PRevent   // thowingexception in such cases.  setenv("LC_ALL", "C", 1);    enum CMD { NONE,CONSOLE, DAEMON } cmd = NONE;   struct AgentCMD{      const char*command;      CMD cmd;} 

那么LC_ALL=C(POSIX)又意味著什么呢?說白了,就是程序會去除所有l(wèi)ocale sensitive的設(shè)置,以保證命令能正確執(zhí)行。然后呢?修改之后agent能正常啟動了么?這個自然啦,修改后的程序跟國際化還有什么關(guān)系么?又何談國際化問題呢?說好的國際化回歸測試,竊以為,亦可以休矣!大家也都同意么?


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 皮山县| 咸宁市| 右玉县| 富阳市| 阿拉善右旗| 容城县| 专栏| 保靖县| 永善县| 永平县| 永新县| 鹤壁市| 鄂托克前旗| 华池县| 沧源| 富川| 临城县| 海丰县| 荣昌县| 疏附县| 图木舒克市| 兴海县| 平昌县| 大田县| 东乌珠穆沁旗| 沈阳市| 孟津县| 尼玛县| 阜阳市| 泸西县| 孟州市| 东平县| 平江县| 甘德县| 搜索| 青龙| 福贡县| 松桃| 章丘市| 墨玉县| 西吉县|