Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::showbase,std::noshowbase

      From cppreference.com
      <cpp‎ |io‎ |manip
       
       
       
      Input/output manipulators
      Floating-point formatting
      Integer formatting
      showbasenoshowbase
      Boolean formatting
      Field width and fill control
      Other formatting
      Whitespace processing
      Output flushing
      Status flags manipulation
      Time and money I/O
      (C++11)
      (C++11)
      (C++11)
      (C++11)
      Quoted manipulator
      (C++14)
       
      Defined in header<ios>
      std::ios_base& showbase(std::ios_base& str);
      (1)
      std::ios_base& noshowbase(std::ios_base& str);
      (2)
      1) Enables theshowbase flag in the streamstr as if by callingstr.setf(std::ios_base::showbase).
      2) Disables theshowbase flag in the streamstr as if by callingstr.unsetf(std::ios_base::showbase).

      This is an I/O manipulator, it may be called with an expression such asout<< std::showbase for anyout of typestd::basic_ostream or with an expression such asin>> std::showbase for anyin of typestd::basic_istream.

      Theshowbase flag affects the behavior of integer output (seestd::num_put::put), monetary input (seestd::money_get::get) and monetary output (seestd::money_put::put).

      Contents

      [edit]Parameters

      str - reference to I/O stream

      [edit]Return value

      str (reference to the stream after manipulation).

      [edit]Notes

      As specifed instd::num_put::put, the showbase flag in integer output acts like the # format specifier instd::printf, which means the numeric base prefix isnot added when outputting the value zero.

      [edit]Example

      Run this code
      #include <iomanip>#include <iostream>#include <locale>#include <sstream> int main(){// showbase affects the output of octals and hexadecimalsstd::cout<<std::hex<<"showbase: "<< std::showbase<<42<<'\n'<<"noshowbase: "<< std::noshowbase<<42<<'\n'; // and both input and output of monetary valuesstd::locale::global(std::locale("en_US.UTF8"));longdouble val=0;std::istringstream("3.14")>> std::showbase>>std::get_money(val);std::cout<<"With showbase, parsing 3.14 as money gives "<< val<<'\n';std::istringstream("3.14")>> std::noshowbase>>std::get_money(val);std::cout<<"Without showbase, parsing 3.14 as money gives "<< val<<'\n';}

      Output:

      showbase: 0x2anoshowbase: 2aWith showbase, parsing 3.14 as money gives 0Without showbase, parsing 3.14 as money gives 314

      [edit]See also

      clears the specified ios_base flags
      (function)[edit]
      sets the specifiedios_base flags
      (function)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/io/manip/showbase&oldid=180136"

      [8]ページ先頭

      ©2009-2025 Movatter.jp