C에서 정수를 16진수 문자열로 변환
C에서 정수를 16진수 문자열로 변환하려면
std::hex를 사용하려면 간단히 정수 앞에 삽입하면 됩니다. 변환하려는 경우:
std::stringstream stream; stream << std::hex << your_int; std::string result(stream.str());
또한 "0x"와 같은 16진수 표현에 접두사를 추가할 수 있습니다. 삽입:
stream << "0x" << std::hex << your_int;
다른 관심 있는 조작자는 std::oct(8진수) 및 std::dec(10진수)입니다.
한 가지 잠재적인 문제는 16진수 문자열이 일관된 숫자를 갖도록 하는 것입니다. 숫자의. 이 문제를 해결하려면 std::setfill 및 std::setw:
stream << std::setfill('0') << std::setw(sizeof(your_type) * 2) << std::hex << your_int;
마지막으로 정수를 16진수 문자열로 변환하는 제안 함수가 있습니다.
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에서 정수를 16진수 문자열로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!