0
我是C++的新手,我有一個簡單而愚蠢的問題,我希望有人能幫助我! 我有一個字節,例如:如何獲取顯示字節十六進制值的字符串?
uint8_t MyByte = 0x0C;
,我想將其轉換成與十六進制MyByte值的字符串,在這種情況下「0℃」。 如果我嘗試:
std::string MyString = std::to_string(MyByte);
我將獲得:MyString的= 「12」;我想獲取MyString = 「0C」,而不是相應的十六進制值。 這可能嗎?
謝謝!
編輯: 我知道有關於提供的鏈接有一個類似的問題,但它是不正確的形式。實際上,如果我嘗試:
std::stringstream stream;
stream << std::hex << MyByte;
std::string MyString(stream.str());
MyString沒有按預期顯示我。
我只是tryied該解決方案,似乎它的工作:
std::stringstream stream;
stream << std::hex << (int)MyByte; // cast needed
std::string MyString(stream.str());
std::transform(strBcc.begin(), strBcc.end(),strBcc.begin(), ::toupper);
感謝。這樣,我獲得了MyString =「0c」。有沒有辦法取得「0C」呢? – ASLaser