Maison >développement back-end >C++ >Comment convertir des entiers en chaînes hexadécimales en C ?
Conversion d'entiers en chaînes hexadécimales en C
En C, la conversion d'un entier en chaîne hexadécimale peut être réalisée à l'aide de l'outil
Pour utiliser std::hex, insérez-le simplement avant l'entier que vous souhaitez convertir :
std::stringstream stream; stream << std::hex << your_int; std::string result(stream.str());
Vous pouvez également ajouter des préfixes à la représentation hexadécimale, tels que "0x", en l'incluant dans le premier insertion :
stream << "0x" << std::hex << your_int;
D'autres manipulateurs intéressants sont std::oct (octal) et std::dec (décimal).
Un défi potentiel consiste à garantir que la chaîne hexadécimale a un nombre cohérent de chiffres. Pour résoudre ce problème, vous pouvez utiliser std::setfill et std::setw:
stream << std::setfill('0') << std::setw(sizeof(your_type) * 2) << std::hex << your_int;
Enfin, voici une fonction suggérée pour convertir des entiers en chaînes hexadécimales :
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(); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!