我需要一些脚本的帮助。我有十六进制数字,我需要在它们旁边对齐,但我不知道如何在c ++中以一种很好的方式解决这个问题。
例如我有这个数组:
int test[3]={0x12,0x13,0xab};
所以我希望得到这个输出:
0x1213ab
答案 0 :(得分:0)
你可以轻松地做到这一点
#include <iostream>
#include <iomanip>
int main() {
int test[3] = {0x12,0x13,0xab};
std::cout << "0x";
for(auto x : test) {
std::cout << std::hex << std::setw(2) << std::setfill('0') << x;
// | | |
// | | v
// | | Prevents filling blanks
// | v
// | Chooses a field output size of 2
// v
// Provides hex formatting of integers
}
std::cout << std::endl;
}
请参阅Live Demo
来自好c++ reference documentation的相关链接: