簡單的關於sizeof的用法

2021-06-20 09:22:03 字數 640 閱讀 4027

最近開始複習一下之前的一些知識,當然只是一些我的簡單的見解,如果有錯誤,請諒解,並希望各位能指出我的錯誤,非常感謝!!!

關於sizeof首先我們要明確它是乙個關鍵字,而不是函式(在vi中會變顏色),而sizeof()是用來測出 變數或常量在記憶體中所佔的大小(位元組數)。

sizeof()用法簡單的有兩種,1:sizeof(type) sizeof()裡加型別,測該型別的變數或常量所佔記憶體大小, 2:sizoef(name) sizeof()裡加變數名或者常量名,用來測該資料在記憶體中所佔大小。

現在我簡單的舉幾個例子:

1:sizeof( int ), int 是乙個整形型別, 但是int型別所佔記憶體大小與機器字長有關 ,如果是32位電腦,sizeof( int )為4位元組,如果是64位電腦sizeof( int )為8位元組

機器字長在計算結構體大小時也要考慮到。

2: int  a;  sizeof(a),與 sizoef(int ) 是一樣的意思

3:計算陣列的大小    int  arr, 就不能使用sizeof(int), 須用sizoef(arr)== sizeof(int)*10。而計算陣列的長度(元素的個素) 可以使用 sizeof(arr)/sizoef(arr[0])

或者 sizoef(arr)/sizeof(int)

關於sizeof與strlen用法的討論

今天在進行乙個多執行緒檔案傳輸的時候,在考慮到收發資料報的組成與拆包時,總是發現收發包會出現錯誤,導致收發報的失敗。後來通過仔細檢查,原來是 sizeof與strlen用法出現了錯誤,經過查詢,我把資料拿出來和大家一起分享。1.sizeof操作符的結果型別是size t,它在標頭檔案中typedef...

sizeof 函式的用法

原文章出處 sizeof 功能 計算資料空間的位元組數 1.與strlen 比較 strlen 計算字元陣列的字元數,以 0 為結束判斷,不計算為 0 的陣列元素。而sizeof計算資料 包括陣列 變數 型別 結構體等 所佔記憶體空間,用位元組數 表示,計算字串時,計算為 0 2.指標與靜態陣列的s...

c語言基礎之sizeof的簡單用法

c語言基礎之sizeof的簡單用法一 sizeof的概念 sizeof是c語言的一種單目操作符。它並不是函式。簡單的說,sizeof操作符以位元組形式給出了其運算元的儲存大小。運算元可以是乙個表示式或括在括號內的型別名。運算元的儲存大小由運算元的型別決定。er 二 sizeof的使用方法 1 用於資...