Compartilhar via


time_put::put

Saída informações de data e hora como uma seqüência de CharTypeS.

iter_type put(
   iter_type _Next, 
   ios_base& _Iosbase,
   char_type _Fill, 
   const tm* _Pt, 
   char _Fmt, 
   char _Mod = 0
) const;
iter_type put(
   iter_type _Next, 
   ios_base& _Iosbase,
   char_type _Fill, 
   const tm* _Pt,
   const CharType* _First, 
   const CharType* _Last
) const;

Parâmetros

Valor de retorno

Um iterador a primeira posição após o último elemento inserido.

Comentários

a primeira função de membro retorna do_put(_Next, _Iosbase, _Fill, _Pt, _Fmt, _Mod).A segunda função de membro copia *_Next ++ qualquer elemento no intervalo [_First, _Last) que não seja uma porcentagem (%).Para uma porcentagem seguido por um caractere C no intervalo [_First, _Last), a função avalia em vez de isso _Next = do_put(_Next, _Iosbase, _Fill, _Pt, C, 0) e ignora após *C.*Se, no entanto, C é um caractere qualificadores do conjunto EOQ#, seguido por um caractere C2 no intervalo [_First, _Last), a função avalia em vez de isso _Next = do_put(_Next, _Iosbase, _Fill, _Pt, C2, *C)*e ignora após C2.

Exemplo

// time_put_put.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
#include <time.h>
using namespace std;
int main( )
{
   locale loc;
   basic_stringstream<char> pszPutI;
   ios_base::iostate st = 0;
   struct tm t;
   memset( &t, 0, sizeof( struct tm ) );

   t.tm_hour = 5;
   t.tm_min = 30;
   t.tm_sec = 40;
   t.tm_year = 00;
   t.tm_mday = 4;
   t.tm_mon = 6;

   pszPutI.imbue( loc );
   char *pattern = "x: %X %x";
   use_facet <time_put <char> >
   (loc).put(basic_ostream<char>::_Iter(pszPutI.rdbuf( )),
          pszPutI, ' ', &t, pattern, pattern+strlen(pattern));

      cout << "num_put( ) = " << pszPutI.rdbuf( )->str( ) << endl;

      char strftimebuf[255];
      strftime(&strftimebuf[0], 255, pattern, &t);
      cout << "strftime( ) = " << &strftimebuf[0] << endl;
}
  

Requisitos

Cabeçalho: <locale>

namespace: STD

Consulte também

Referência

time_put Class