sizeof關鍵字
C語言提供了sizeof關鍵字,可以用於獲取某個數據類型或者變量的字節容量大小。例如char類型佔據1個字節的容量,double類型變量佔據8個字節的容量。該關鍵字的使用格式如下:
sizeof(數據類型名);
sizeof(變量名);
程序測試代碼如下:
深入學習,可以交個朋友,工人人人號:韋凱峰linux編程學堂

程序運行結果如下:

可以看到,sizeof(char)就返回了char類型定義變量時,所佔據的內存字節數。sizeof(a)就返回了變量a所佔據的內存字節數。
sizeof關鍵字可以獲取數組、結構體、指針等C語言合法的數據類型和變量的字節容量。
sizeof關鍵字獲取數組容量
假設有如下定義的一維數組:
int array[8];
那麼,這個 array[] 數組佔據多少個字節容量?我們可以思考如下:
(1) array[] 數組有8個元素;
(2) 數組每個元素是int類型,由於int類型佔據4個字節;所以,array[]數組就佔用8 * 4 = 32個字節的空間。
程序測試例子如下:
深入學習,可以交個朋友,工人人人號:韋凱峰linux編程學堂

程序運行結果如下:

可以看到,通過sizeof(array)獲取array數組的容量,就是獲取數組所佔據的內存字節數。
那麼,我們可以通過sizeof關鍵字獲取數組所佔據的內存字節數,如果知道數組元素的類型,就可以知道數組的長度。計算過程如下:
(1) sizeof(數組元素類型); 獲取數組中一個元素所佔據的字節數;假設為X;
(2) sizeof(數組); 獲取數組佔據的字節數;假設為Y;
那麼,數組的長度就是數組中元素的個數,假設為 num,就有 num = Y/X;程序測試代碼如下:
深入學習,可以交個朋友,工人人人號:韋凱峰linux編程學堂

程序運行結果如下:

可以看到,計算出了num變量就是array數組的長度。就是所含元素的個數。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/253372.html
微信掃一掃
支付寶掃一掃