首頁 > 後端開發 > C++ > 如何在 C 中將整數轉換為十六進位字串?

如何在 C 中將整數轉換為十六進位字串?

Mary-Kate Olsen
發布: 2025-01-05 17:10:43
原創
922 人瀏覽過

How to Convert Integers to Hexadecimal Strings in C  ?

在C 中將整數轉換為十六進位字串

在C 中,可以使用 將整數轉換為十六進位字串。標頭的 std::hex 操縱器。列印轉換後的字串可以透過 std::cout 完成,而使用 std::stringstream 是將結果擷取為字串的選項。

要使用std::hex,只需將其插入到您要使用的整數之前想要轉換:

std::stringstream stream;
stream << std::hex << your_int;
std::string result(stream.str());
登入後複製

您還可以為十六進製表示添加前綴,例如“0x”,將其包含在第一個插入:

stream << "0x" << std::hex << your_int;
登入後複製

其他感興趣的操縱器是std::oct(八進位)和std::dec(十進位)。

一個潛在的挑戰是確保十六進位字串具有一致的數字的數字。為了解決這個問題,您可以使用std::setfill 和std::setw:

stream << std::setfill('0') << std::setw(sizeof(your_type) * 2) << std::hex << your_int;
登入後複製

最後,這裡有一個將整數轉換為十六進位字串的建議函數:

template<typename T>
std::string int_to_hex(T i)
{
  std::stringstream stream;
  stream << "0x" << std::setfill('0') << std::setw(sizeof(T) * 2) << std::hex << i;
  return stream.str();
}
登入後複製

以上是如何在 C 中將整數轉換為十六進位字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板