最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C/C++編程知識:運算符(五)丨sizeof()運算符來啦!

2021-01-16 22:14 作者:C語言編程__Plus  | 我要投稿

在C或C ++中,?Sizeof是一個非常常用的運算符。它是一個編譯時一元運算符,可用于計算其操作數(shù)的大小。sizeof的結果是無符號整數(shù)類型,通常用size_t表示。sizeof可以應用于任何數(shù)據(jù)類型,包括原始類型(例如整數(shù)和浮點類型,指針類型)或復合數(shù)據(jù)類型(例如Structure,union等)。


用法

sizeof()運算符根據(jù)操作數(shù)類型以不同方式使用。

1.當操作數(shù)是數(shù)據(jù)類型時

當將sizeof()與int,float,char…等數(shù)據(jù)類型一起使用時,它僅返回分配給該數(shù)據(jù)類型的內存量。


讓我們來看一個例子:

C語言:

#include <stdio.h>

int main()

{

????printf("%lu\n", sizeof(char));

????printf("%lu\n", sizeof(int));

????printf("%lu\n", sizeof(float));

????printf("%lu", sizeof(double));

????return 0;

}

C ++:

#include <iostream>

using namespace std;

int main()

{

????cout << sizeof(char)<<"\n";

????cout << sizeof(int)<<"\n";

????cout << sizeof(float)<<"\n";

????cout << sizeof(double)<<"\n";

????return 0;

}

注意:sizeof()可能會根據(jù)機器提供不同的輸出,我們已經(jīng)在32位gcc編譯器上運行了程序。

2.當操作數(shù)是一個表達式時

當將sizeof()與表達式一起使用時,它將返回表達式的大小??蠢樱?/p>

C語言:

#include <stdio.h>

int main()

{

????inta = 0;

????double d = 10.21;

????printf("%lu", sizeof(a + d));

????return 0;

}

C ++:

#include <iostream>

using namespace std;

int main()

{

????int a = 0;

????double d = 10.21;

????cout << sizeof(a + d));

????return 0;

}

從int和double的第一種情況下我們知道,大小分別是4和8,a是int變量,而d是double變量。最終結果將是兩倍。因此,我們程序的輸出為8個字節(jié)。


需要Sizeof

1.找出數(shù)組中元素的數(shù)量。

Sizeof可用于自動計算數(shù)組元素的數(shù)量。讓我們看例子:

C語言:

#include <stdio.h>

int main()

{

????int arr[] = { 1, 2, 3, 4, 7, 98, 0, 12, 35, 99, 14 };

????printf("Number of elements:%lu ", sizeof(arr) / sizeof(arr[0]));

????return 0;

}

C ++:

#include <iostream>

using namespace std;

int main()

{

????int arr[] = { 1, 2, 3, 4, 7, 98,?

????0, 12, 35, 99, 14 };

????cout << "Number of elements: "

????<<(sizeof(arr) / sizeof(arr[0]));

????return 0;

}

2.為了動態(tài)分配的內存塊

sizeof在動態(tài)內存分配中被大量使用。例如,如果我們要分配足以容納10個整數(shù)的內存,而我們不知道該特定機器中的sizeof(int)。我們可以借助sizeof進行分配。

int* ptr = (int*)malloc(10 * sizeof(int));

希望對大家有幫助!更多知識,會繼續(xù)分享奧~

另外如果你想更好的提升你的編程能力,學好C語言C++編程!彎道超車,快人一步!筆者這里或許可以幫到你~

UP在主頁上傳了一些學習C/C++編程的視頻教程,有興趣或者正在學習的小伙伴一定要去看一看哦!會對你有幫助的~

分享(源碼、項目實戰(zhàn)視頻、項目筆記,基礎入門教程)

歡迎轉行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!

編程學習書籍分享:


編程學習視頻分享:



C/C++編程知識:運算符(五)丨sizeof()運算符來啦!的評論 (共 條)

分享到微博請遵守國家法律
伊通| 黄浦区| 宜兴市| 哈巴河县| 灵璧县| 武威市| 济南市| 桐梓县| 梅河口市| 岳阳市| 余江县| 西吉县| 海宁市| 秦皇岛市| 全南县| 铁力市| 房产| 隆安县| 衡阳市| 鹤壁市| 安西县| 囊谦县| 临桂县| 北川| 酉阳| 茂名市| 永定县| 金湖县| 四子王旗| 巴里| 句容市| 竹山县| 胶南市| 永春县| 华阴市| 错那县| 万载县| 涟源市| 焦作市| 襄汾县| 且末县|