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

隨筆 - 64, 文章 - 11, 評(píng)論 - 12, 引用 - 0
數(shù)據(jù)加載中……

C++ 字符串操作初析

       曾經(jīng)有一篇關(guān)于C++程序?qū)懽鞯奈恼拢恼抡f(shuō)C++程序員要花費(fèi)20%的時(shí)間來(lái)處理字符串方面的細(xì)節(jié)問(wèn)題,甚至更多。可見(jiàn)C++中的字符處理是相當(dāng)復(fù)雜,原因是C++中有著豐富的字符及字符串類,如STL中的string,wstring,char,wchar_t、還有windows C程序?qū)懽髦蠵TSTR,PWSTR,PTSTR,MFC及ATL中的CString,  BSTR,_bstr_t,CComBSTR,OLESTR,還有一種隨編譯時(shí)是否預(yù)定義了UNICODE而被分析為具體類型的TCHAR及這些字符,或封裝類的一大把函數(shù)。而我們要用的系統(tǒng)函數(shù),標(biāo)準(zhǔn)庫(kù)函數(shù)或其它庫(kù)函數(shù)。有的要這種字符而沒(méi)有提供接受其它字符的版本。這些原因也就促使了C++程序員往往要花許多的時(shí)間來(lái)處理字符串。上次和朋友聊到寫(xiě)代碼的話題。他說(shuō)一天只能寫(xiě)三百來(lái)行的代碼。確實(shí)要寫(xiě)高效的,高質(zhì)量的C++代碼很要下一番功夫。

        在上面介紹了許多的字符串,及字符串封裝類。實(shí)際上所有的這些類都最終可歸結(jié)為C風(fēng)格字符串,也就是字符數(shù)組。目前字符的編碼方案主要有單字節(jié)字符(ANSI)編碼,多字節(jié)字符(MBCS)編碼,還有就是UNICODE編碼。前兩種字符編碼的字符還都是用char這個(gè)數(shù)據(jù)類型來(lái)維護(hù)。當(dāng)是多字節(jié)時(shí)典型的就是2個(gè)字節(jié)時(shí),就會(huì)用2個(gè)char來(lái)存儲(chǔ),一個(gè)字節(jié)時(shí)就會(huì)用一個(gè)char來(lái)存儲(chǔ)。這就是串中的字符占多少個(gè)字節(jié)得看具體的字符,不能像原來(lái)一樣一個(gè)一個(gè)地?cái)?shù)就可以知道會(huì)占多少個(gè)字節(jié)。UNICODE則簡(jiǎn)化了這種編碼方案,讓每個(gè)字符都占用相同大小的字節(jié),UNICODE 中的字符是用wchar_t來(lái)定義的,這中編碼方案則是每個(gè)字符都占用兩個(gè)字節(jié)。在這種編碼方案下我們又可以一個(gè)一個(gè)地?cái)?shù)來(lái)算出占用了多少字節(jié),計(jì)算機(jī)可以用一種統(tǒng)計(jì)方式來(lái)處理這種字符串了。雖然犧牲了些內(nèi)存,但換取了邏輯的簡(jiǎn)單性。

        這里我寫(xiě)了幾個(gè)工具函數(shù),可以方便地在各種數(shù)據(jù)類型之間進(jìn)行轉(zhuǎn)換。我認(rèn)為這幾個(gè)函數(shù)會(huì)對(duì)處理字符串提供幫助,所在我就在首頁(yè)發(fā)表了。大家有什么好的想法可以回復(fù)我。另我這兩天會(huì)封裝MSXML來(lái)操作XML,希望大家能給點(diǎn)意見(jiàn)。到時(shí)我可以與相關(guān)參與的人員共享這個(gè)封裝。

posted on 2008-07-11 23:07 Robertxiao 閱讀(3930) 評(píng)論(7)  編輯 收藏 引用 所屬分類: C++

評(píng)論

# re: C++ 字符串操作初析[未登錄](méi)  回復(fù)  更多評(píng)論   

WideCharToMultiByte
MultiByteToWideChar
包裝了這兩個(gè)API,挺好,
2008-07-11 23:46 | gohan

# re: C++ 字符串操作初析  回復(fù)  更多評(píng)論   

樓主所言極是,確實(shí)在字符串處理方面有點(diǎn)傷神,有時(shí)一個(gè)項(xiàng)目用到了幾個(gè)第三方庫(kù),常常由于函數(shù)接口的字符串類型不一致,需進(jìn)行調(diào)整擴(kuò)展。
2008-07-12 07:31 | 路緣

# re: C++ 字符串操作初析  回復(fù)  更多評(píng)論   

我現(xiàn)在就用wstring和string兩種東西。。。其他的基本不用了。
那點(diǎn)效率我也不大稀罕的。
至于XML,何必用MSXML,普通的DOM用TinyXML就很好了。
如果你要支持DTD或者XML Schema這樣的除外。
2008-07-12 12:39 | 空明流轉(zhuǎn)

# re: C++ 字符串操作初析  回復(fù)  更多評(píng)論   

推薦開(kāi)源c++ 庫(kù),http://pocoproject.org/,里面對(duì)std::string 進(jìn)行了一些擴(kuò)展,個(gè)人覺(jué)得不錯(cuò)
2008-07-12 15:11 | lotus

# re: C++ 字符串操作初析  回復(fù)  更多評(píng)論   

有些很強(qiáng)大地string類...
2008-07-13 01:23 | 逍遙劍客

# re: C++ 字符串操作初析  回復(fù)  更多評(píng)論   

boost 有專門的字符串處理庫(kù)
2008-07-13 15:38 | teli

# re: C++ 字符串操作初析  回復(fù)  更多評(píng)論   

這種方法我也寫(xiě)過(guò),博主寫(xiě)的不錯(cuò),現(xiàn)在我更感興趣的是string和wstring之間的直接轉(zhuǎn)換,呵呵,,不想用API來(lái)做,博主寫(xiě)一個(gè)??
2008-07-14 08:26 | 紫夜蒼狼
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产精品一区在线观看| 欧美一级淫片aaaaaaa视频| 午夜亚洲福利在线老司机| 中文欧美字幕免费| 欧美一级理论片| 久久婷婷一区| 亚洲国产精品黑人久久久| 亚洲高清在线观看一区| 欧美激情二区三区| 亚洲欧洲一区二区三区| 亚洲一区3d动漫同人无遮挡| 午夜日韩在线| 欧美大秀在线观看| 国产精品青草久久久久福利99| 国产农村妇女毛片精品久久麻豆 | 久久免费的精品国产v∧| 久久婷婷综合激情| 欧美日韩国产首页| 国产日韩精品电影| 亚洲国产欧美一区二区三区丁香婷| 亚洲精品国产精品久久清纯直播 | 亚洲欧美在线网| 久久视频在线看| 亚洲国产色一区| 亚洲欧美中文另类| 欧美激情第五页| 国产一区二区在线免费观看| 一区二区成人精品| 久久久综合网| 亚洲视频一区二区免费在线观看| 久久国产天堂福利天堂| 欧美色大人视频| 亚洲国产日韩在线一区模特| 欧美尤物巨大精品爽| 亚洲激情中文1区| 久久久精品网| 国产美女高潮久久白浆| 99精品国产热久久91蜜凸| 久久av在线| 正在播放亚洲一区| 欧美mv日韩mv国产网站| 在线成人av.com| 欧美一区二区高清| 夜夜嗨av一区二区三区中文字幕| 久久久之久亚州精品露出| 国产欧美高清| 亚洲欧美中文日韩v在线观看| 欧美激情网友自拍| 欧美自拍偷拍午夜视频| 国产九九视频一区二区三区| 中文av一区特黄| 亚洲激情综合| 欧美成人精品一区| 亚洲精品久久久久久久久| 久久躁日日躁aaaaxxxx| 欧美一区二区高清| 国产日产欧美a一级在线| 亚洲欧美日韩第一区| 一区二区高清在线观看| 欧美日韩精品在线| 亚洲视频在线观看| 一区二区三区四区精品| 国产精品二区三区四区| 亚洲欧美国产精品专区久久| 一二三区精品| 国产欧美日韩综合| 久久九九热re6这里有精品| 亚洲欧美中文日韩v在线观看| 久久精品午夜| 亚洲主播在线观看| 国产精品v片在线观看不卡| 一区二区三区精品视频| 正在播放欧美一区| 国产三区精品| 久热精品视频在线免费观看| 久久久久91| 亚洲精品欧美精品| 亚洲美女在线观看| 国产精品综合视频| 牛夜精品久久久久久久99黑人| 久久综合影音| 中文一区二区在线观看| 亚洲在线一区二区| 国产在线精品一区二区夜色| 久久久久久一区| 欧美成人精品一区二区| 在线亚洲欧美专区二区| 欧美亚洲视频在线观看| 亚洲激情在线观看| 亚洲一区观看| 亚洲精品1区2区| 亚洲五月六月| 91久久精品一区| 亚洲欧美自拍偷拍| 亚洲久久在线| 欧美在线视频日韩| 一区二区三区蜜桃网| 久久精品国产第一区二区三区| 日韩一级精品| 久久久久久亚洲综合影院红桃| 中日韩在线视频| 欧美不卡一卡二卡免费版| 久久精品国产99国产精品澳门| 欧美高清在线视频观看不卡| 久久久91精品| 欧美日韩精品欧美日韩精品| 久久综合色播五月| 国产精品一区=区| 亚洲精品一区在线观看| 亚洲国产成人精品女人久久久 | 欧美一级二级三级蜜桃| 美女诱惑一区| 久久久999精品| 欧美日韩1区| 欧美激情一区二区三区在线| 国产字幕视频一区二区| 亚洲主播在线| 亚洲一区国产视频| 欧美粗暴jizz性欧美20| 久久综合电影| 国产综合久久久久久| 亚洲午夜久久久久久久久电影网| 99视频一区| 欧美精品一区二区三区在线播放| 免费日韩av| 国内精品视频666| 欧美影院成年免费版| 欧美主播一区二区三区美女 久久精品人| 免费成人av在线看| 欧美激情一区二区三区全黄| 亚洲国产一区二区a毛片| 韩日午夜在线资源一区二区| 欧美日韩大陆在线| 欧美一级在线视频| 欧美日韩一区二区三区在线| 亚洲二区在线| 亚洲人体大胆视频| 欧美成人精品不卡视频在线观看| 久久在线视频在线| 一区在线免费| 久久免费视频这里只有精品| 久久综合伊人77777蜜臀| 国产一区二区黄色| 久久久人成影片一区二区三区观看 | 伊人成人在线视频| 久久视频在线视频| 免费试看一区| 亚洲国产一区二区三区在线播| 久热综合在线亚洲精品| 欧美国产在线视频| 日韩视频亚洲视频| 欧美性猛交xxxx乱大交蜜桃 | 亚洲福利av| 99国产精品久久久久久久成人热| 欧美激情一区二区三区全黄| 91久久夜色精品国产网站| 一本色道久久综合狠狠躁篇的优点| 欧美另类人妖| 午夜国产精品视频免费体验区| 久久嫩草精品久久久久| 亚洲精品视频免费| 欧美性大战xxxxx久久久| 欧美一级网站| 亚洲人成在线观看| 欧美一区二区精品| 亚洲国产中文字幕在线观看| 国产精品v欧美精品v日本精品动漫| 亚洲欧美在线高清| 欧美成人国产一区二区| 亚洲综合精品四区| 亚洲国产成人午夜在线一区| 欧美视频日韩视频在线观看| 欧美在线一区二区| 亚洲免费成人av| 母乳一区在线观看| 亚洲欧美日韩精品综合在线观看| 精品91免费| 国产精品久久久999| 欧美成人一区二区三区| 欧美一区在线看| 在线亚洲一区二区| 亚洲第一福利视频| 久久久久久综合| 亚洲一区国产| 亚洲人体大胆视频| 韩国美女久久| 国产精品专区第二| 欧美日韩国产精品自在自线| 欧美在线视频一区二区| 亚洲视频中文字幕| 亚洲精品无人区| 欧美激情精品久久久久久蜜臀| 久久精品国产亚洲一区二区| 亚洲视频图片小说| 91久久精品国产| 在线观看成人小视频| 国内精品久久久久久久97牛牛| 蜜桃伊人久久| 99国产一区| 毛片基地黄久久久久久天堂|