Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menukar Integer kepada Rentetan Heksadesimal dalam C?

Bagaimana untuk Menukar Integer kepada Rentetan Heksadesimal dalam C?

Mary-Kate Olsen
Lepaskan: 2025-01-05 17:10:43
asal
975 orang telah melayarinya

How to Convert Integers to Hexadecimal Strings in C  ?

Menukar Integer kepada Rentetan Heksadesimal dalam C

Dalam C , penukaran integer kepada rentetan perenambelasan boleh dicapai menggunakan header's std::hex manipulator. Mencetak rentetan yang ditukar boleh dilakukan melalui std::cout, manakala menggunakan std::stringstream ialah pilihan untuk menangkap hasil sebagai rentetan.

Untuk menggunakan std::hex, cuma masukkannya sebelum integer anda ingin menukar:

std::stringstream stream;
stream << std::hex << your_int;
std::string result(stream.str());
Salin selepas log masuk

Anda juga boleh menambah awalan pada perwakilan perenambelasan, seperti "0x", dengan memasukkannya dalam sisipan pertama:

stream << "0x" << std::hex << your_int;
Salin selepas log masuk

Manipulator lain yang diminati ialah std::oct (octal) dan std::dec (decimal).

Satu cabaran yang berpotensi ialah memastikan rentetan perenambelasan mempunyai bilangan digit yang konsisten. Untuk menangani perkara ini, anda boleh menggunakan std::setfill dan std::setw:

stream << std::setfill('0') << std::setw(sizeof(your_type) * 2) << std::hex << your_int;
Salin selepas log masuk

Akhir sekali, berikut ialah fungsi yang dicadangkan untuk menukar integer kepada rentetan perenambelasan:

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();
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menukar Integer kepada Rentetan Heksadesimal dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan