sizeof的介紹
1.作用:
用來計算乙個常量或者乙個變數、一種資料型別所佔的記憶體位元組數
2.基本形式
1>sizeof(變數\常量)
int size = sizeof(10); // int型別的常量占用4個位元組
int a = 10;
int size = sizeof(a); // int型別的變數占用4個位元組
2>sizeof 變數\常量
int size = sizeof 8.8; // double型別的常量占用8個位元組
int b = 10;
int size = sizeof(b); // double型別的變數占用8個位元組
3>sizeof(資料型別)
int size = sizeof(int); // int型別的資料占用4個位元組
int size = sizeof(double); // double型別的資料占用8個位元組
int size = sizeof(char); // char型別的資料占用1個位元組
4>sizeof 資料型別 //這種是錯誤的
5>當陣列作為函式引數傳遞時,會當作指標變數使用,而指標變數在64位編譯器環境下。始終佔據8個位元組,也就是說陣列作為函式引數傳遞時,不論是什麼型別的陣列,始終佔據8個位元組
strlen函式的使用:
1.計算字串的長度
2.計算的是字元數,不是字型個數
3.計算的字元不包括\0
4.計算字元時,遇到\0則停止計算;若本字串不含\0,則就近尋找,遇到才會停止
例如:int size = strlen("hello你好")
//乙個中文文字佔3個位元組,所以一共佔11個位元組,而不是7個
char name = "hel\0lo";
int size = strlen(name); // 字串長度為3位元組
char names = ;
int size = strlen(names);
// 字串長度為5位元組,因為names中沒有\0,需要去name中尋找,遇到\0則停止
sizeof和strlen和 countof的區別
運算子,計算引數所佔記憶體 int nnum2 strlen arr 是函式,求字元的個數,不包括 0 int nnum3 countof arr windows巨集 計算陣列的元素個數 cout nnum1 cout nnum2 cout nnum3 endl int arr1 20 nnum1 ...
sizeof和strlen的區別
sizeof與strlen的區別與聯絡 轉 1.sizeof操作符的結果型別是size t,它在標頭檔案中typedef為unsigned int型別。該型別保證能容納實現所建立的最大物件的位元組大小。2.sizeof是算符,strlen是函式。3.sizeof可以用型別做引數,strlen只能用c...
strlen和sizeof的區別
sizeof與strlen的區別與聯絡 轉 1.sizeof操作符的結果型別是size t,它在標頭檔案中typedef為unsigned int型別。該型別保證能容納實現所建立的最大物件的位元組大小。2.sizeof是算符,strlen是函式。3.sizeof可以用型別做引數,strlen只能用c...