今天c++上刷題,很簡單的乙個題,卡在了計算vector的長度這一步。sizeof(vector) 和 vector.size() 得到的結果不一樣,於是學習了下基礎。
是運算子,在標頭檔案中typedef為unsigned int,其值在編譯時即計算好了,引數可以是陣列、指標、型別、物件、函式等。( sizeof()運算子用來求物件所佔記憶體空間的大小。)
舉例1.1
//在 windows中
sizeof(char)=1
sizeof(int)=4
sizeof(long)=8
sizeof(float)=4
sizeof(double)=8
sizeof(string)=28。
例子1.2 參考部落格
char c = "asdsds"; // c是陣列,計算到'\0'位置,sizeof 值為1+1=7
char* cc = c; //*cc指向c的第乙個字元,大小為1
char cn[40] = "asdsds"; //開闢40個char空間,大小為40*1=40
int a = ; //a是陣列,但不需計算到'\0',結果為6*4=24
int* aa = a; //aa為指標型別,sizeof(aa) = 8大小為8,*aa指向a的第乙個數字,大小為4
二者都可以獲得字串的長度,除此之外,.size可以獲得vector長度 PC Lint和SI整合小問題
pc lint和sourceinsight的整合網上可以搜尋到一大堆的文件,但以前同事遇到個問題,在si裡執行pc lint後的結果頁裡,每個item前都會有乙個按鈕可以方便地鏈結到對應的 行。當時同事的所有配置和我的都一樣,但是他的結果頁就是沒有那個按鈕,最好鬱悶半天也沒解決。我這兩天也用pc l...
容器容量和容器大小(capacity和size)
1 容器容量 容器所能容納元素的個數,通常大於容器的實際儲存元素的個數。s.capacity 檢視容器容量 s.reserve len 擴充套件當前容器的容量,如果len大於當前容器容量,那麼將會將容器的容量擴充套件為len,且不會對新擴充套件的空間進行初始化 當len小於等於當前容器容量時,什麼也...
SI和DI暫存器的用途
sidi是8086cpu中和bx功能相近的暫存器,sidi不能夠分成兩個8位暫存器來使用.下面三組指令實現了相同的功能 1 mov bx,0 mov ax,bx 2 mov si,0 mov ax,si 3 mov di,0 mov ax,di 下面的三組指令也實現了相同的功能 1 mov bx,0...