長さ未定のunsigned char配列を文字列にフォーマットしたいときの例。
stringstreamをフォーマットしながら使う。
#include <iostream>
#include <sstream>
#include <iomanip>
using namespace std;
int main(){
unsigned char s[] = {255,255,0,0,1,1};
unsigned char t[] = {255,255,0,0,1,1,255,255};
char str[64];
stringstream ss;
for(int i=0; i<sizeof(s)/sizeof(s[0]); i++){
ss << hex << uppercase << setw(2) << setfill('0');
ss << (int)s[i] << ',';
}
cout << ss.str().c_str() << "\n";
ss.str("");
ss.clear();
for(int i=0; i<sizeof(t)/sizeof(t[0]); i++){
ss << hex << uppercase << setw(2) << setfill('0');
ss << (int)t[i] << ',';
}
cout << ss.str().c_str() << "\n";
return 0;
}
FF,FF,00,00,01,01,
FF,FF,00,00,01,01,FF,FF,