編寫代碼求C語言中枚舉類型所占的內存長用sizeof?
枚舉類型,在C語言中求sizeof,可以先定義一個枚舉類型,然后對枚舉類型中的元素,或者對類型求size,獲取到內存長。
代碼如下
#include
enum TEST
{
TEST0,
TEST1,
TEST2
};
int main()
{
printf("size of TEST is %d\n", sizeof(TEST));//用類型求大小。
printf("size of TEST is %d\n", sizeof(TEST1));//用元素求大小。
return 0;
}對于枚舉類型,區分是否有負數值,系統會按照unsigned int或int來處理,而是否帶符號,并不影響int的占用空間。所以任意枚舉類型或枚舉變量,占用的空間都是和平臺實現時的int類型相同。對于主流的32位/64位平臺,枚舉類型均占4字節。即sizeof結果為4。