Using the fill member function and the setfill manipulator to change the padding character for fields larger than the values being printed.
c:
#include <iostream>
using std::cout;
using std::endl;
#include <iomanip>
using std::ios;
using std::setw;
using std::hex;
using std::dec;
using std::setfill;
int main()
{
int x = 10000;
cout << x << " printed as int right and left justified\n"
<< "and as hex with internal justification.\n"
<< "Using the default pad character (space):\n";
cout.setf( ios::showbase );
cout << setw( 10 ) << x << '\n';
cout.setf( ios::left, ios::adjustfield );
cout << setw( 10 ) << x << '\n';
cout.setf( ios::internal, ios::adjustfield );
cout << setw( 10 ) << hex << x;
cout << "\n\nUsing various padding characters:\n";
cout.setf( ios::right, ios::adjustfield );
cout.fill( '*' );
cout << setw( 10 ) << dec << x << '\n';
cout.setf( ios::left, ios::adjustfield );
cout << setw( 10 ) << setfill( '%' ) << x << '\n';
cout.setf( ios::internal, ios::adjustfield );
cout << setw( 10 ) << setfill( '^' ) << hex << x << endl;
return 0;
} // end function main
using std::cout;
using std::endl;
#include <iomanip>
using std::ios;
using std::setw;
using std::hex;
using std::dec;
using std::setfill;
int main()
{
int x = 10000;
cout << x << " printed as int right and left justified\n"
<< "and as hex with internal justification.\n"
<< "Using the default pad character (space):\n";
cout.setf( ios::showbase );
cout << setw( 10 ) << x << '\n';
cout.setf( ios::left, ios::adjustfield );
cout << setw( 10 ) << x << '\n';
cout.setf( ios::internal, ios::adjustfield );
cout << setw( 10 ) << hex << x;
cout << "\n\nUsing various padding characters:\n";
cout.setf( ios::right, ios::adjustfield );
cout.fill( '*' );
cout << setw( 10 ) << dec << x << '\n';
cout.setf( ios::left, ios::adjustfield );
cout << setw( 10 ) << setfill( '%' ) << x << '\n';
cout.setf( ios::internal, ios::adjustfield );
cout << setw( 10 ) << setfill( '^' ) << hex << x << endl;
return 0;
} // end function main