青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

說說字符集

Posted on 2008-04-16 15:28 orlando 閱讀(172) 評論(0)  編輯 收藏 引用

由于作者是美國人的緣故,我發現Windows下的幾本名著(如《Windows程序設計》,Jeffrey Richter的《Windows 核心編程》)對字符集的講解都不甚透徹。現在這里對一些易讓人迷惑的問題進行澄清,并指明一些編程時容易出錯的問題(我自己就犯過)。

 

先解釋幾個概念:

 

字符集:根據編碼特性而分,字符集可分為三類。

l         窄字符集(SBCS 每個代碼由一個字節進行表示,比如ANSI

l         多字節字符集(MBCS 字符集中的代碼或者是單字節,或者是多字節,比如DBCSGB2312等。

l         寬字節字符集   字符集中每個字符由兩個字節表示。比如UNICODE

 

代碼頁:UNICODEDBCS中由于包含的代碼十分多,為了使用方便就需要對這些代碼進行組織。組織的方法就是把不同國家的代碼分別放入不同的代碼頁。

 

字符集與代碼頁的關系:由上可知,對于UNICODEDBCS,代碼頁是從屬于字符集的。但對于SBCS類的字符集(比如ANSI)和DBCS之外的MBCS字符集(比如GB2312等)他們則只對應于一個代碼頁。

 

下面看一段潛在有問題的程序:

void ConverAndOutputString(HDC hdc,LPWSTR wstr, int length,int x,int y)

{

int nret;

int sizebuffer= 2*length;

char* lpBuffer=new char[sizebuffer];

 

nret=WideCharToMultiByte(CP_ACP,0,wstr , length,

                            lpBuffer, sizebuffer ,NULL,NULL);

TextOut(hdc,x,y, lpBuffer,nret);

 

delete[]lpBuffer;

}

這段程序很簡單,只是把一個寬字符串轉為DBCS串而后按指定的坐標進行輸出。Jeffrey Richter在他的《Windows核心編程》中的第26頁也用幾乎的相同的方法進行字符串轉換。但這段程序其實是有問題的。問題出在轉換字符串時不應該硬編碼指定代碼頁,而應該根據當前字體進行動態獲取。否則在某些情況下將無法把wstr中的UNICODE字符轉換到正確的代碼。如果你用上述代碼進行中文輸出,你將很有幸看到很多問號被自動添加到你的字符串中。

解決的辦法也很簡單,但首先你要熟悉如下兩個個API函數:

      int GetTextCharset(HDC hdc);//lpCs,dwFlags

posts - 16, comments - 17, trackbacks - 0, articles - 1

Copyright © orlando

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            黄色精品一区| 午夜精品福利视频| 亚洲第一区中文99精品| 久久99伊人| 午夜精品一区二区三区电影天堂 | 国产精品毛片高清在线完整版| 狂野欧美一区| 欧美视频在线免费| 欧美在线看片a免费观看| 日韩一区二区久久| 一区二区高清在线| 午夜精品美女久久久久av福利| 国产精品天美传媒入口| 欧美日韩八区| 欧美成人在线免费观看| 久热爱精品视频线路一| 亚洲国产精品国自产拍av秋霞| 欧美中文字幕在线视频| 亚洲激情网站| 亚洲欧美日韩在线| 亚洲品质自拍| 国产精品一区亚洲| 欧美成人午夜激情视频| 欧美综合国产| 久久久久久**毛片大全| 亚洲香蕉在线观看| 亚洲欧洲日韩综合二区| 久久综合图片| 亚洲天堂免费观看| 亚洲精选久久| 亚洲精品乱码视频| 国产精品欧美日韩一区| 在线观看三级视频欧美| 亚洲成人在线网| 国产手机视频精品| 欧美一区二区私人影院日本| 亚洲国产精品一区| 久热国产精品| 欧美电影免费观看大全| 蜜臀久久久99精品久久久久久| 99热这里只有成人精品国产| 狠狠色丁香婷婷综合影院 | 99热在线精品观看| 在线看视频不卡| 国产啪精品视频| 在线观看成人网| 亚洲国产精品专区久久| 中国成人黄色视屏| 国模吧视频一区| 国产日韩精品电影| 尤物九九久久国产精品的特点 | 夜夜精品视频一区二区| 亚洲第一黄网| 一本大道av伊人久久综合| 亚洲第一狼人社区| 欧美国产先锋| 亚洲视频精品| 一本久久综合亚洲鲁鲁| 亚洲欧美www| 欧美有码在线视频| 欧美α欧美αv大片| 欧美激情无毛| 欧美日韩综合不卡| 好吊成人免视频| 亚洲国产国产亚洲一二三| 小处雏高清一区二区三区| 亚洲综合日韩| 国产精品久久久久久影视| 国产精品国产三级国产专区53 | 欧美日韩日本国产亚洲在线| 欧美电影免费观看高清| 欧美高清在线播放| 亚洲激情影视| 午夜久久tv| 亚洲制服少妇| 一区二区三区我不卡| 亚洲欧美在线一区二区| 亚洲神马久久| 国产精品日本| 久久精品在这里| 欧美激情一区三区| 亚洲免费影视第一页| 亚洲美女av黄| 亚洲精品乱码久久久久久按摩观 | 美国十次了思思久久精品导航| 亚洲女人小视频在线观看| 国产精品免费久久久久久| 91久久夜色精品国产九色| 中国av一区| 国产精品久久久久av免费| 亚洲片在线观看| 蜜臀av国产精品久久久久| 亚洲欧洲综合另类在线| 亚洲人成77777在线观看网| 极品少妇一区二区| 亚洲一区二区在线观看视频| 国产亚洲激情视频在线| 久久精品成人一区二区三区蜜臀| 亚洲美女精品久久| 精品av久久久久电影| 日韩视频免费观看高清在线视频| 国产婷婷97碰碰久久人人蜜臀| 国产精品羞羞答答| 久久久青草青青国产亚洲免观| 欧美视频导航| 一本不卡影院| 亚洲区欧美区| 欧美不卡福利| 亚洲经典一区| 91久久精品美女高潮| 欧美福利电影网| 欧美成人精品高清在线播放| 亚洲美女黄色| 欧美激情网友自拍| 欧美中文字幕不卡| 一区免费在线| 国产精品色一区二区三区| 欧美亚洲尤物久久| 欧美中文字幕在线播放| 欧美日韩在线免费视频| 一区二区三区精品在线| 久久精品二区| av成人免费观看| 精品69视频一区二区三区| 欧美日韩国产综合视频在线观看| 亚洲欧美大片| 亚洲国产日韩欧美在线图片| 亚洲婷婷综合久久一本伊一区| 国产日韩欧美91| 国产精品高潮呻吟| 久久久久久精| 亚洲娇小video精品| 欧美在线观看一区| 亚洲伊人一本大道中文字幕| 狠狠色丁香久久综合频道| 欧美激情1区| 欧美www视频| 欧美三级网址| 国产精品毛片一区二区三区 | 免费中文字幕日韩欧美| 欧美丝袜第一区| 麻豆亚洲精品| 亚洲欧美日韩中文播放| 91久久国产综合久久| 在线播放亚洲一区| 亚洲日本精品国产第一区| 国产精品亚洲а∨天堂免在线| 国产精品入口福利| 欧美人妖在线观看| 国产精品久久久久av免费| 国产精品久久久久久久一区探花 | 亚洲第一毛片| 国产热re99久久6国产精品| 欧美无砖砖区免费| 久久久久国产一区二区三区四区 | 欧美成在线视频| 欧美日韩一区二区在线| 国产女精品视频网站免费| 国产精品入口麻豆原神| 亚洲黑丝在线| 亚洲一级高清| 亚洲欧美一区二区原创| 欧美激情精品久久久久久久变态| 亚洲激情一区二区三区| 国产精品99久久久久久人| 欧美aⅴ一区二区三区视频| 久久久久久久久伊人| 国产精品大片| 亚洲欧美国产视频| 亚洲美女在线视频| 欧美精品综合| 国产精品一区二区在线| 在线观看日韩| 欧美一区二区成人| 久久另类ts人妖一区二区| 亚洲国产精品ⅴa在线观看| 久久综合久色欧美综合狠狠| 夜夜爽av福利精品导航| 欧美天天在线| 欧美一区二区日韩一区二区| 亚洲一二三四久久| 日韩视频一区二区在线观看| 久久综合九色九九| 亚洲精品麻豆| 久久综合亚洲社区| 你懂的国产精品| 国产一区成人| 久久综合网色—综合色88| 欧美高清视频在线播放| 亚洲制服欧美中文字幕中文字幕| 欧美电影免费观看| 性伦欧美刺激片在线观看| 国产综合久久久久影院| 噜噜噜噜噜久久久久久91| 欧美在线综合| 在线国产欧美| 亚洲视频久久| 1024亚洲| 亚洲欧洲一区二区三区| 国产欧美日韩综合|