Heim >Backend-Entwicklung >C++ >Wie konvertiere ich ganze Zahlen in hexadezimale Zeichenfolgen in C?
Ganzzahlen in hexadezimale Zeichenfolgen in C konvertieren
In C kann die Konvertierung einer Ganzzahl in eine hexadezimale Zeichenfolge mit der Funktion
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!