C語言 字元全形 半形轉換

2021-07-29 05:48:36 字數 1298 閱讀 1513

1.全形是一種電腦字元

,且每個全形字符

占用兩個標準字元(或半形

字元)位置。

每個普通字元(或半形字元

)只占用一位元組

的空間(一位元組有8

位,共256

個編碼空間),而漢語、日語

、及朝鮮文等象形字語言的字型檔

量遠大於256

個,所以改用兩個位元組來儲存。同時,也是因為中日韓等象形文本

的書寫習慣,如果統一使用全形字符的話,排列起來也顯得整齊。

為了排列整齊,英文

和其它拉丁文

的字元和標點也提供了全形格式。

漢字字元和規定了全形的英文本元及國標gb

2312-80中的圖形符號

和特殊字元都是全形字符。一般的系統

命令是不用全形字符的,只是在作文書處理時才會使用全形字符。

通常的英文本母、數字鍵、符號鍵都是半形的,半形的顯示內碼都是乙個位元組。在系統內部,以上三種字元是作為基本**處理的,所以使用者輸入命令和引數時一般都使用半形。  

全形佔兩個位元組,半形佔乙個位元組。半形

全形主要是針對標點符號來說的,

全形標點佔兩個位元組,半形佔乙個位元組,而不管是半形還是

全形,漢字都還是要佔兩個位元組。

在程式設計序的源**

中只能使用半形標點(不包括字串內部的資料)

在不支援漢字等語言的計算機上只能使用半形標點(其實這種情況根本就不存在半形

全形的概念)。

對於大多數字型來說,全形看起來比半形大,當然這不是本質區別。

[全形舉例]aabb1234@#$%^&*

;,。:

[半形舉例

]aabb1234@#$%^&*;,.: 

2.實際中,半形英文本元、標點符號等,轉換為全形的過程是:將在單位元組高8位設定為 0xa3 (即163),將低位元組設定為該單位元組字元 + 0x80(即128)----將其變為乙個首位為1的8位位元組,將其變為倆個個位元組(即全形)。

c語言實現 字元的全形、半形轉換:

int fulltohalf(char *sfullstr, char *shalfstr)

else

} printf("shalfstr:[%s]\n", shalfstr);

return 0;}

int halftofull(char *sfullstr, char *shalfstr)

else

} printf("sfullstr:[%s]\n", sfullstr);

return 0;

}

c 全形半形轉換

轉全形的函式 sbc case 任意字串 全形字串 全形空格為 12288 半形空格為 32 其他字元半形 33 126 與全形 65281 65374 的對應關係是 均相差 65248 public string tosbc string input if c i 127 c i char c i...

c 全形半形轉換

region 全形半形轉換 轉全形的函式 sbc case 任意字串 全形字串 全形空格為12288,半形空格為32 其他字元半形 33 126 與全形 65281 65374 的對應關係是 均相差65248 public static string tosbc string input if c ...

字元轉換 全形和半形轉換

在我們使用搜狗輸入法的時候會有全形和半形的切換,首先看一下這兩者的區別吧 全形,指乙個字元占用兩個標準字元位置的狀態,也是排字的度量單位,寬度等於所使用的文字的磅數漢。半形,即乙個字元占用乙個標準字元的位置,排字的量度單位,寬度等於同一磅數全形的一半。全形和半形的使用 1 在中文輸入法中,切換全形和...