Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::ios_base::setf(3)	      C++ Standard Libary	std::ios_base::setf(3)

NAME
       std::ios_base::setf - std::ios_base::setf

Synopsis
	  fmtflags setf( fmtflags flags	);		  (1)
	  fmtflags setf( fmtflags flags, fmtflags mask ); (2)

	  Sets the formatting flags to specified settings.

	  1)  Sets  the	formatting flags identified by flags. Effectively, the
       following
	  operation is performed fl = fl | flags where fl defines the state of
       internal
	  formatting flags.
	  2) Clears the	formatting flags under	mask,  and  sets  the  cleared
       flags to	those
	  specified by flags. Effectively the following	operation is performed
       fl = (fl	&
	  ~mask)  | (flags & mask) where fl defines the	state of internal for-
       matting flags.

Parameters
			new formatting setting.	mask defines which  flags  can
       be altered, flags
	  flags,  mask	- defines which	flags of those to be altered should be
       set (others will
			be cleared). Both parameters can be a  combination  of
       the formatting
			flags constants

	      Formatting flags

	  Constant    Explanation
	  dec	      use decimal base for integer I/O:	see std::dec
	  oct	      use octal	base for integer I/O: see std::oct
	  hex	      use hexadecimal base for integer I/O: see	std::hex
	  basefield   dec | oct	| hex. Useful for masking operations
	  left	      left adjustment (adds fill characters to the right): see
       std::left
	  right	      right adjustment (adds fill characters to	the left): see
       std::right
	  internal     internal	adjustment (adds fill characters to the	inter-
       nal designated
		      point): see std::internal
	  adjustfield left | right | internal. Useful for masking operations
	  scientific  generate floating	point types using scientific notation,
       or hex notation
		      if combined with fixed: see std::scientific
	  fixed	      generate floating	point types using fixed	 notation,  or
       hex notation if
		      combined with scientific:	see std::fixed
	  floatfield  scientific | fixed. Useful for masking operations
	  boolalpha   insert and extract bool type in alphanumeric format: see
       std::boolalpha
	  showbase     generate	a prefix indicating the	numeric	base for inte-
       ger output,
		      require the currency  indicator  in  monetary  I/O:  see
       std::showbase
	  showpoint    generate	 a decimal-point character unconditionally for
       floating-point
		      number output: see std::showpoint
	  showpos     generate a + character for non-negative numeric  output:
       see std::showpos
	  skipws      skip leading whitespace before certain input operations:
       see std::skipws
	  unitbuf      flush  the  output  after  each	output	operation: see
       std::unitbuf
	  uppercase   replace certain lowercase	letters	with their uppercase
		      equivalents in certain output operations:	 see  std::up-
       percase

Return value
	  The formatting flags before the call to the function.

Example
       // Run this code

	#include <iomanip>
	#include <iostream>
	#include <numbers>

	int main()
	{
	    const double PI = std::numbers::pi;
	    const int WIDTH = 15;

	    std::cout.setf(std::ios::right); //	equivalent: cout << right;
	    std::cout << std::setw(WIDTH / 2) << "radius"
		      << std::setw(WIDTH) << "circumference" <<	'\n';

	    std::cout.setf(std::ios::fixed); //	equivalent: cout << fixed;
	    for	(double	radius = 1; radius <= 6; radius	+= 0.5)
		std::cout << std::setprecision(1) << std::setw(WIDTH / 2)
			  << radius
			  << std::setprecision(2) << std::setw(WIDTH)
			  << (2	* PI * radius) << '\n';
	}

Output:
	 radius	 circumference
	    1.0		  6.28
	    1.5		  9.42
	    2.0		 12.57
	    2.5		 15.71
	    3.0		 18.85
	    3.5		 21.99
	    4.0		 25.13
	    4.5		 28.27
	    5.0		 31.42
	    5.5		 34.56
	    6.0		 37.70

See also
	  flags	 manages format	flags
		 (public member	function)
	  unsetf clears	specific format	flag
		 (public member	function)

http://cppreference.com		  2024.06.10		std::ios_base::setf(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::ios_base::setf&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help