最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++獲取字符串長(zhǎng)度的幾個(gè)函數(shù)方式

 更新時(shí)間:2020年12月09日 10:59:24   作者:zhouhongkai06  
這篇文章主要介紹了C++獲取字符串長(zhǎng)度的幾個(gè)函數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

C/C++ strlen(str)、str.length()、str.size()、sizeof(str)都可以求字符串長(zhǎng)度。

其中str.length()、str.size()、sizeof(str)是用于求string類對(duì)象的成員函數(shù)

strlen(str)是用于求字符數(shù)組的長(zhǎng)度,其參數(shù)是char*。

補(bǔ)充知識(shí):獲取字符串長(zhǎng)度的函數(shù)sizeof()、strlen()、length()、size()詳解和區(qū)別

在C++中計(jì)算長(zhǎng)度的函數(shù)有四種,它們分別是sizeof() ,size(),strlen(),str.length()。

一. sizeof()和strlen()兩者區(qū)別:

1)sizeof操作符的結(jié)果類型是size_t,該類型保證能容納實(shí)現(xiàn)所建立的最大對(duì)象的字節(jié)大小。

2)sizeof是運(yùn)算符,strlen是函數(shù)。

3)sizeof可以用類型做參數(shù),strlen只能用char*做參數(shù),且必須是以''\0''結(jié)尾的。

4)sizeof在編譯時(shí)期就計(jì)算出來,strlen在運(yùn)行之后才能計(jì)算出來。

5)strlen計(jì)算字符串的具體長(zhǎng)度(只能是字符串),不包括字符串結(jié)束符。返回的是字符個(gè)數(shù)。sizeof計(jì)算聲明后所占的內(nèi)存數(shù)(字節(jié)大小),不是實(shí)際長(zhǎng)度。

舉例:

1)char* ss = "0123456789";

sizeof(ss)為4,ss是指向字符串常量的字符指針,sizeof 獲得的是指針?biāo)嫉目臻g,則為4

sizeof(*ss)為1,*ss是第一個(gè)char字符,則為1

2)char ss[] = "0123456789";

sizeof(ss)為11,ss是數(shù)組,計(jì)算到'\0'位置,因此是(10+1)

sizeof(*ss)為1,*ss是第一個(gè)字符

3)char ss[100] = "0123456789";

sizeof(ss)為100,ss表示在內(nèi)存中預(yù)分配的大小,100*1

strlen(ss)為10,它的內(nèi)部實(shí)現(xiàn)用一個(gè)循環(huán)計(jì)算字符串的長(zhǎng)度,直到'\0'為止。

4)int ss[100] = "0123456789";

sizeof(ss)為400,ss表示在內(nèi)存中預(yù)分配的大小,100*4

strlen(ss)錯(cuò)誤,strlen參數(shù)只能是char*,且必須是以'\0'結(jié)尾

5)char[] a={'a','b','c'};

sizeof(a)的值應(yīng)該為3。

char[] b={"abc"};

sizeof(b)的值應(yīng)該是4。

6)若string str={'a','b','c','\0','X'};

那么sizeof(str)為5,strlen(str)為3。

二. string中的length()和size()

c++中,在獲取字符串長(zhǎng)度時(shí),size()函數(shù)與length()函數(shù)作用相同。

例如:string str = “wang”

則,str.length() = 4。

除此之外,size()函數(shù)還可以獲取vector類型的長(zhǎng)度。

例如:vector < int> num(15,2)

則,num.size() = 15。

以上這篇C++獲取字符串長(zhǎng)度的幾個(gè)函數(shù)方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

饶河县| 兴文县| 安溪县| 二手房| 金湖县| 洪洞县| 太原市| 灵武市| 乌拉特中旗| 临高县| 蒙山县| 商城县| 淮滨县| 定远县| 沁源县| 普兰县| 西乌| 东光县| 大厂| 井研县| 南城县| 临猗县| 五指山市| 方城县| 鹤岗市| 新营市| 黄冈市| 内乡县| 阿克苏市| 乳山市| 繁峙县| 民乐县| 龙州县| 永清县| 登封市| 文山县| 鲁山县| 陕西省| 黔南| 盐边县| 略阳县|