1樓:彼可取而代也
使用unicode軟體可以支援多國語言(如漢語等),便於國際化
可以在字串前加_t(" ");如afxmessagebox(_t("abc"));這個_t()會把字串轉換成當前設定的字符集。
vs預設的unicode 與vc6.0裡預設的ascii,這些是什麼東西?能通俗的講一下嗎?
2樓:匿名使用者
vc6.0預設的是ansi,區別在於ansi一個字元佔一個位元組,中文則佔兩個位元組,unicode不管中文還是字元都佔兩個位元組
ansi字串:char*,一個基本單元即char佔一個位元組
unicode字串:wchar_t*,一個基本單元即wchar_t(也就是short)佔2個位元組
比如字串:123測試
ansi字串長度是7個位元組(7個基本單元),unicode是10個位元組(5個基本單元)
這兩種編碼應該是必須掌握的,以及兩種編碼的互相轉換
utf-8是個比較奇葩的東西,一般程式設計是不會遇到的,它裡面一箇中文可能會佔3個位元組,跟unicode不是直接相容的需要轉換,如果是做網路程式設計的話可能要判斷得到的編碼是utf-8還是ansi的了,否則就會得到一堆亂碼
c++ 下unicode程式設計與多字符集程式設計有什麼區別?
3樓:匿名使用者
我就說 我常用的vc吧, 平時常用vs2008,vs2012什麼的unicode程式設計和ansi 最大的區別就是要替換一整套函式從一開始的main 就有區別
接受到的引數 一個是 wchar_t的 , 而ansi下是char *的引數.
因此在處理中文字元時,注意事項也不同.牽扯到轉碼等問題.
很多字串操作函式也變了.
比如 printf / _wprintf
fopen / wfopen
strlen / wcslen
strcmp/ wcscmp等等
4樓:
編碼標準與程式語言無關
5樓:弟弟宇
多字符集是一個字元佔兩個位元組的
6樓:匿名使用者
由於每種語言都制定了自己的字符集,導致最後存在的各種字符集實在太多,在國際交流中要經常轉換字符集非常不便。因此,提出了unicode字符集,它固定使用16 bits(兩個位元組、一個字)來表示一個字元,共可以表示65536個字元。將世界上幾乎所有語言的常用字元收錄其中,方便了資訊交流。
標準的unicode稱為utf-16。後來為了雙位元組的unicode能夠在現存的處理單位元組的系統上正確傳輸,出現了utf-8,使用類似mbcs的方式對unicode進行編碼。注意utf-8是編碼,它屬於unicode字符集。
unicode字符集有多種編碼形式,而ascii只有一種,大多數mbcs(包括gb-2312)也只有一種。
VC2019比6 0在除錯程式有哪些改進之處
我也是剛剛換上了vc2005,你用過vc6.0,那我就說說vc6.0常常遇上的問題吧 類經常會莫名其妙的消失,新增的一些成員有時會找不到,到了後來,最最讓我惱火的是,編譯時常常假死,就是一直停在linking.或者別的地方,想終止也不行,只得去工作管理員中結束,這一結束不要緊,有時你這樣結束後會導致...
VC 6 0中設定文字框輸入字元個數,當字元輸入完游標自動
控制元件屬性裡可以設定字元個數,跳到下一個文字框可以在字元改變訊息裡判斷,設定焦點 新增文字框控制元件的事件響應,檢測輸入的字串長度,到達指定長度後,將焦點設定到下一個文字框控制元件 設計一個只接受字母鍵的文字框,在文字框text1中輸入一串字元時,文字框text2中就即 private sub t...
VC如何把漢字和字母混合的字串拆分為單個的字元?CString的字串
那要bai看你的編碼,通常來說是duansi的,這zhi種情況下字元的編碼 ascii 英dao文數字版和半形符號是一個位元組,權而且這個位元組的值小於127。漢字佔兩個位元組,且每個位元組都小於0 或者無符號大於128 你把字串逐個字元判斷,篩選就可以了。unicode編碼,所有字元都是兩個位元組...