第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

請(qǐng)?jiān)徫野l(fā)代碼,我也知道發(fā)代碼是可恥的,但是實(shí)在是不知道怎么回事了。

請(qǐng)?jiān)徫野l(fā)代碼,我也知道發(fā)代碼是可恥的,但是實(shí)在是不知道怎么回事了。

GCT1015 2023-01-02 18:14:29
#include <unistd.h>#include <stdio.h>#include <sys/types.h>#include <iconv.h> //convert function#include <sys/stat.h>#include <fcntl.h>#define S 2000void convert(const char *fromset,const char *toset,char *from,int from_len,char *to,int to_len){printf("%s is to be converted!\n",from);iconv_t cd,cdd;cd=iconv_open(toset,fromset);char **from2=&from;char **to2=&to;if(iconv(cd,from2,&from_len,to2,&to_len)==-1)printf("Convert fail!\n");elseprintf("Convert success!\n");iconv_close(cd);return ;}int main(){char from[]="你好";  char to[S];convert("GB2312","BIG5",from,strlen(from),to,S); //把gb2312轉(zhuǎn)換成big5printf("%s\n",to);return 0;}如果我把convert函數(shù)的參數(shù)“GB2312”和“BIG5”換成“UTF-8”和“GB2312”就可以成功,不知道為什么。謝謝了。
查看完整描述

2 回答

?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

顯然GBK無(wú)法轉(zhuǎn)換成BIG5。iconv的含義是將一個(gè)抽象的符號(hào)的編碼進(jìn)行轉(zhuǎn)換。
但是如果一個(gè)符號(hào)比如“個(gè)”,可能在BIG5的編碼中不存在(繁體字中不同)
GBK包含的是簡(jiǎn)體字,BIG5包含的是繁體字,Unicode包含全部,
所以
GBK->Unicode,Big5-Unicode (總是OK)
Unicode->GBK (當(dāng)里面僅包含英文及簡(jiǎn)體時(shí)OK)
Unicode->BIG5 (當(dāng)里面僅包含英文及繁體時(shí)OK)
GBK->Big5 (基本上不行,除非某些字沒(méi)有特別的簡(jiǎn)體字)

GBK->Big5是漢字的簡(jiǎn)繁轉(zhuǎn)換,不是編碼轉(zhuǎn)換,簡(jiǎn)體字轉(zhuǎn)繁體字還有一個(gè)問(wèn)題,一個(gè)簡(jiǎn)體字可能是對(duì)應(yīng)多個(gè)繁體字,這種很難轉(zhuǎn)換正確。繁體字轉(zhuǎn)換成簡(jiǎn)體字相對(duì)難度低。 

說(shuō)白了,即使意思一樣,簡(jiǎn)體和繁體也是兩個(gè)字,不能劃等號(hào)。應(yīng)當(dāng)使用簡(jiǎn)繁通。


查看完整回答
反對(duì) 回復(fù) 2023-01-06
?
慕無(wú)忌1623718

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊

1、iconv的含義是將一個(gè)抽象的符號(hào)的編碼進(jìn)行轉(zhuǎn)換。
但是如果一個(gè)符號(hào)比如“個(gè)”,可能在BIG5的編碼中不存在(繁體字中不同)
GBK包含的是簡(jiǎn)體字,BIG5包含的是繁體字,Unicode包含全部,
所以
GBK->Unicode,Big5-Unicode (總是OK)
Unicode->GBK (當(dāng)里面僅包含英文及簡(jiǎn)體時(shí)OK)
Unicode->BIG5 (當(dāng)里面僅包含英文及繁體時(shí)OK)
GBK->Big5 (基本上不行,除非某些字沒(méi)有特別的簡(jiǎn)體字)
GBK->Big5是漢字的簡(jiǎn)繁轉(zhuǎn)換,不是編碼轉(zhuǎn)換,簡(jiǎn)體字轉(zhuǎn)繁體字還有一個(gè)問(wèn)題,一個(gè)簡(jiǎn)體字可能是對(duì)應(yīng)多個(gè)繁體字,這種很難轉(zhuǎn)換正確。繁體字轉(zhuǎn)換成簡(jiǎn)體字相對(duì)難度低。 

2、#include <iconv.h>
size_t iconv(iconv_t cd,
char **inbuf, size_t *inbytesleft,
char **outbuf, size_t *outbytesleft);
函數(shù)原型, outbuf是一個(gè) char **類(lèi)型
在函數(shù)手冊(cè)中:
The iconv() function converts one multibyte character at a time, and for each character conversion it increments *inbuf and decrements
*inbytesleft by the number of converted input bytes, it increments *outbuf and decrements *outbytesleft by the number of converted
output bytes

 


查看完整回答
反對(duì) 回復(fù) 2023-01-06
  • 2 回答
  • 0 關(guān)注
  • 149 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)