1
私はスクリプトのための助けが必要です。私は16進数のようなものを持っています。私はそれらの隣に整列する必要がありますが、C++でうまくいく方法でこれを解決する方法はわかりません。例えば隣の16進数を整列
私はこの配列を持っている:だから
int test[3]={0x12,0x13,0xab};
と、私はこの出力を持っているしたいと思います:
0x1213ab
私はスクリプトのための助けが必要です。私は16進数のようなものを持っています。私はそれらの隣に整列する必要がありますが、C++でうまくいく方法でこれを解決する方法はわかりません。例えば隣の16進数を整列
私はこの配列を持っている:だから
int test[3]={0x12,0x13,0xab};
と、私はこの出力を持っているしたいと思います:
0x1213ab
あなたは簡単に
#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;
}
を参照してくださいことを行うことができます 良い
c++ reference documentationからの
関連リンク:
それは整数で出力を転送することが可能でしょうか? – Yann
@ Yannはい、単に 'std :: istream'を使って' std :: hex' I/Oマニピュレータを使うだけです。しかし、メモリ内で単純なコピーを実行するより高速な方法もあります。 –