欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來(lái)到入門教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

淺談C++中的string 類型占幾個(gè)字節(jié)

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊: 次

在C語(yǔ)言中我們操作字符串肯定用到的是指針或者數(shù)組,這樣相對(duì)來(lái)說(shuō)對(duì)字符串的處理還是比較麻煩的,好在C++中提供了 string 類型的支持,讓我們?cè)谔幚碜址畷r(shí)方便了許多。

首先,我寫(xiě)了一段測(cè)試代碼,如下所示:

復(fù)制代碼 代碼如下:

#include <iostream>
using namespace std;

int main(void)
{
 string str_test1;
 string str_test2 = "Hello World";

 int value1, value2, value3;

 value1 = sizeof(str_test1);
 value2 = sizeof(str_test2);
 value3 = sizeof(string);

 cout<<"str_test1占 "<<value1<<" 個(gè)字節(jié)"<<endl;
 cout<<"str_test2占 "<<value2<<" 個(gè)字節(jié)"<<endl;
 cout<<"string占 "<<value3<<" 個(gè)字節(jié)"<<endl;

 system("pause");
 return 0;
}


首先,我用G++編譯運(yùn)行,得到的結(jié)果如下圖所示:


這說(shuō)明string占4個(gè)字節(jié)。
之后,我用VS2012編譯運(yùn)行,得到的結(jié)果如下圖所示:


奇怪,這里string竟然占28個(gè)字節(jié)。
這里,我們注意觀察,還會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題,不管有沒(méi)有對(duì)string類型的變量賦值,或者是賦什么值,得到的結(jié)果是一樣的。

下面,來(lái)解釋上述問(wèn)題:
string的實(shí)現(xiàn)在各庫(kù)中可能有所不同,但是在同一庫(kù)中相同一點(diǎn)是,無(wú)論你的string里放多長(zhǎng)的字符串,它的sizeof()都是固定的,字符串所占的空間是從堆中動(dòng)態(tài)分配的,與sizeof()無(wú)關(guān)。    sizeof(string)=4可能是最典型的實(shí)現(xiàn)之一,不過(guò)也有sizeof()為12、32字節(jié)的庫(kù)實(shí)現(xiàn)。通常,我們所用到的 string 類型一般都會(huì)是這樣實(shí)現(xiàn):

復(fù)制代碼 代碼如下:

class{     
char *_Ptr;    //指向字符串的指針     
int _Len;      //字符串的長(zhǎng)度     
........};

所以,我們一般接觸到的string類型所占字節(jié)數(shù)為 8+。

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有