C++ 庫 - <cinttypes>



C++ 中的<cinttypes>標頭檔案提供了一組定寬整型和相應的限制。它用於確保跨不同平臺的資料一致性,尤其是在處理整型時。它透過為整數指定大小來幫助緩解與整數溢位和下溢相關的問題。

<cinttypes> 標頭檔案定義了幾種定寬整型,它們提供特定數量的位。它們列在下面。

  • int8_t: 它是一個帶符號整數型別,正好是 8 位寬。
  • uint8_t: 它是一個無符號整數型別,正好是 8 位寬。
  • int16_t: 它是一個帶符號整數型別,正好是 16 位寬。
  • uint16_t: 它是一個無符號整數型別,正好是 16 位寬。
  • int32_t: 它是一個帶符號整數型別,正好是 32 位寬。
  • uint32_t: 它是一個無符號整數型別,正好是 32 位寬。

這些型別提供了一種一致的方法來宣告具有已知大小的整型變數。

包含 <cinttypes> 標頭檔案

要在你的 C++ 程式中包含 <cinttypes> 標頭檔案,可以使用以下語法。

#include <cinttypes>

<cinttypes> 標頭檔案的函式

以下是 <cinttypes> 標頭檔案中所有函式的列表。

序號 函式及說明
1 abs & imaxabs

它計算整數的絕對值。

2 div & imaxdiv

它計算整數除法的商和餘數。

3 strtoimax & strtoumax

它將字串轉換為 std::intmax_t 或 std::uintmax_t。

4 wcstoimax & wcstoumax

它將寬字串轉換為 std::intmax_t 或 std::uintmax_t。

使用 int8_t 進行算術運算

在下面的示例中,我們將使用 int8_t(一個帶符號的 8 位整數)作為兩個變數,然後將它們加在一起並獲取輸出。

#include <iostream>
#include <cinttypes>
int main() {
   int8_t x = 11;
   int8_t y = 7;
   int8_t z = x + y;
   std::cout << "Result : " << static_cast < int > (z) << std::endl;
   return 0;
}

輸出

上面程式碼的輸出如下:

Result : 18
廣告