最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

C++沒(méi)有trim為什么不自己造一個(gè)呢?

2023-10-24 15:54 作者:大方老師單片機(jī)課堂  | 我要投稿

C++沒(méi)有trim為什么不自己造一個(gè)呢?


省流:因?yàn)榫幋a

C++的標(biāo)準(zhǔn)里面是沒(méi)有現(xiàn)在語(yǔ)言中的字符串的。C++的string其實(shí)是字節(jié)數(shù)組,里面沒(méi)有取第i個(gè)字符的功能,只有取第i個(gè)字節(jié)的功能。他不區(qū)分里面內(nèi)容的編碼,也不保證里面的內(nèi)容一定是有效的編碼。

最近很多小伙伴找我,說(shuō)想要一些C++資料,然后我根據(jù)自己從業(yè)十年經(jīng)驗(yàn),熬夜搞了幾個(gè)通宵,精心整理了一份「C++專(zhuān)業(yè)入門(mén)到高級(jí)教程+工具包」,點(diǎn)個(gè)關(guān)注,全部無(wú)償共享給大家?。?!

評(píng)論區(qū)回復(fù)“888”,關(guān)注我之后私信回復(fù)“666”,即可拿走。


而現(xiàn)代編程語(yǔ)言一般會(huì)區(qū)分字符串和字節(jié)數(shù)組。對(duì)于字符串,經(jīng)過(guò)取舍發(fā)現(xiàn)還是按照變長(zhǎng)編碼比較好。Go和Rust的字符串是UTF-8變長(zhǎng)編碼,而Python設(shè)計(jì)得早一些加上是動(dòng)態(tài)類(lèi)型解釋型語(yǔ)言,默認(rèn)字符串存unicode,可以動(dòng)態(tài)編碼成其他編碼的字符串。

由于C++的string在使用的時(shí)候,程序并不知道它的編碼,所以并不存在一個(gè)一定正確的trim函數(shù)的實(shí)現(xiàn)。如果從前后分別一個(gè)字節(jié)一個(gè)字節(jié)的找直到遇到非空白符的ascii碼,在ascii和utf8編碼的字符串上是正確的,但是在utf16上就需要兩個(gè)字節(jié)兩個(gè)字節(jié)找了,而在其他編碼下有可能會(huì)把某個(gè)字符的其中某個(gè)字節(jié)當(dāng)成空白符從而導(dǎo)致bug。

由于C++標(biāo)準(zhǔn)里還沒(méi)有很好的處理編碼問(wèn)題,所以trim函數(shù)還沒(méi)法進(jìn)入標(biāo)準(zhǔn)。


C++沒(méi)有trim為什么不自己造一個(gè)呢?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
桃园县| 五家渠市| 云南省| 商南县| 房产| 慈溪市| 上栗县| 浦江县| 翁牛特旗| 长顺县| 洪雅县| 津南区| 石阡县| 侯马市| 江城| 行唐县| 灵丘县| 崇仁县| 南部县| 建瓯市| 山丹县| 贵德县| 容城县| 克山县| 凤冈县| 句容市| 元江| 屏东县| 大荔县| 正定县| 会宁县| 崇左市| 馆陶县| 斗六市| 奈曼旗| 太湖县| 晋州市| 孝感市| 大新县| 绥阳县| 迭部县|