C語言sizeof 詳解

2021-09-10 12:28:23 字數 1198 閱讀 9677

1、sizeof是c語言的乙個操作符,類似於++、–等。sizeof能夠告訴我們編譯器為某一特定資料或者某乙個型別的資料在記憶體中分配空間時分配的大小,大小以位元組為單位。基本用法為:

1、sizeof

(變數)

;2、sizeof 變數;

3、sizeof

(型別)

;

2、注意點:

(1)sizeof返回的占用空間大小是為這個變數開闢的大小,而不只是他用到的空間。所以對結構體用的時候,大多情況下就得考慮位元組對齊的問題;示例**:

#include

#include

struct person

;int

main

(void

)

輸出結果為:

(2)sizeof返回的資料結果型別是unsigned int,即為無負號的正數;

unsigned int 示例**:

#include

#include

void

test

(void

)else

}int

main

(void

)

輸出結果:

sizeof示例**:

#include

#include

void

test

(void

)else

}int

main

(void

)

輸出結果為:

(3)要注意陣列名和指標變數的區別,通常情況下,我們總覺得陣列名和指標變數差不多但是在某些情況下要注意他們之間的區別;

示例**:

#include

#include

intarrsize

(int arr)

void

test

(void

)int

main

(void

)

輸出結果為:

分析:第乙個輸出為32原因是sizeof測量的是arr陣列的大小。第二個輸出為4是因為當陣列當引數進行傳遞時,陣列只傳遞首位址,即陣列名,所以函式arrsize返回的值是arr陣列首位址的大小。

C語言詳解sizeof

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

c語言詳解sizeof

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

c語言詳解sizeof

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