Meaning of Width and Precision
// meaning of width (n)
// n <= 0: no effect
// n > 0: on output, sets minimum number of characters output
// (filled with fill char)
// on input, sets length of buffer for string extractions
// Note: reset to 0 after each insertion and extraction
// Called by manipulator setw (n)
// meaning of precision (n)
// n <= 0: default
// n > 0: if ios::fixed bit is set, determines number of places
// displayed after decimal point (forced if ios::showpoint
// is also set)
// if ios::fixed is not set, determines number of significant
// digits displayed
// Called by manipulator setprecision (n)