cout << hex << 100 << endl;
ってやると16進数での100の表示が出ますが、
この結果をchar配列に詰めたいときはどうすればいいんでしょうか。

文法的には間違ってますが、
イメージとしては
char[10] buf;
buf << hex << 100;
みたいな感じ。