首頁 >後端開發 >C++ >使用C++中的sizeof運算子的結果

使用C++中的sizeof運算子的結果

王林
王林轉載
2023-09-10 08:41:021343瀏覽

使用C++中的sizeof運算子的結果

Sizeof 運算子是 C 語言中最常用的運算子之一,用於計算我們傳遞的任何資料結構或資料類型的大小。 sizeof 運算子傳回無符號整數類型,該運算子可套用於原始資料類型和複合資料類型。我們可以直接對資料類型使用sizeof 運算子並了解它佔用的記憶體-

範例

#include <bits/stdc++.h>
using namespace std;

int main() {
   cout << sizeof(int) << "\n";
   cout << sizeof(char) << "\n";
   cout << sizeof(float) << "\n";
   cout << sizeof(long) << "\n";
   return 0;
}

輸出

4
1
4
8
8

透過使用此功能,我們可以知道該資料類型的任何變數佔用的空間。輸出也取決於編譯器,因為 16 位元編譯器將為 int 提供與 32 位元編譯器不同的值。

我們也可以將此運算套用到表達式-

範例

#include <bits/stdc++.h>
using namespace std;

int main() {
   cout << sizeof(int) << "\n";
   cout << sizeof(char) << "\n";
   cout << sizeof(float) << "\n";
   cout << sizeof(double) << "\n";
   cout << sizeof(long) << "\n";
   return 0;
}

輸出

4
4

如您所見, x 之前的值為4,即使在前綴操作之後,它也恰好保持不變。這都是因為sizeof運算子的原因,因為這個運算子是在編譯時使用的,所以它不會改變我們應用的表達式的值。

sizeof運算子的必要性

sizeof 運算子有多種用途。儘管如此,它主要用於確定複合資料類型的大小,如陣列、結構體、聯合等。

範例

#include <bits/stdc++.h>

using namespace std;

int main() {
   int arr[] = {1, 2, 3, 4, 5}; // the given array

   int size = sizeof(arr) / sizeof(int); // calculating the size of array

   cout << size << "\n"; // outputting the size of given array
}

輸出

5

這裡首先我們計算整個陣列的大小或計算它所佔用的記憶體。然後我們將該數字除以資料類型的 sizeof ;在這個程式中,它是 int。

該運算子的第二個最重要的用例是分配動態內存,因此我們在分配空間時使用 sizeof 運算子。

範例
#include <bits/stdc++.h>

using namespace std;

int main() {
   int* ptr = (int*)malloc(10 * sizeof(int)); // here we allot a memory of 40 bytes
   // the sizeof(int) is 4 and we are allocating 10 blocks
   // i.e. 40 bytes
}

結論

在本文中,我們將討論 sizeof 運算子的用法及其工作原理。我們還編寫了不同類型的用例來查看輸出並進行討論。我們在 C 中實作了該運算符的用例。我們可以用其他語言(例如 C、Java、Python 等)編寫相同的程式。我們希望本文對您有所幫助。

以上是使用C++中的sizeof運算子的結果的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除