Heim >Backend-Entwicklung >C++ >Wie konvertiere ich ganze Zahlen in hexadezimale Zeichenfolgen in C?

Wie konvertiere ich ganze Zahlen in hexadezimale Zeichenfolgen in C?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-05 17:10:43933Durchsuche

How to Convert Integers to Hexadecimal Strings in C  ?

Ganzzahlen in hexadezimale Zeichenfolgen in C konvertieren

In C kann die Konvertierung einer Ganzzahl in eine hexadezimale Zeichenfolge mit der Funktion erreicht werden. Der std::hex-Manipulator des Headers. Das Drucken der konvertierten Zeichenfolge kann über std::cout erfolgen, während die Verwendung von std::stringstream eine Option zum Erfassen des Ergebnisses als Zeichenfolge ist.

Um std::hex zu verwenden, fügen Sie es einfach vor der von Ihnen angegebenen Ganzzahl ein konvertieren möchten:

std::stringstream stream;
stream << std::hex << your_int;
std::string result(stream.str());

Sie können der hexadezimalen Darstellung auch Präfixe hinzufügen, z. B. „0x“, indem Sie diese in die erste einschließen Einfügung:

stream << "0x" << std::hex << your_int;

Andere interessante Manipulatoren sind std::oct (oktal) und std::dec (dezimal).

Eine mögliche Herausforderung besteht darin, sicherzustellen, dass die hexadezimale Zeichenfolge eine konsistente Zahl hat von Ziffern. Um dieses Problem zu beheben, können Sie std::setfill und std::setw verwenden:

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

Abschließend finden Sie hier eine vorgeschlagene Funktion zum Konvertieren von Ganzzahlen in hexadezimale Zeichenfolgen:

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();
}

Das obige ist der detaillierte Inhalt vonWie konvertiere ich ganze Zahlen in hexadezimale Zeichenfolgen in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn