basic_istream::get

從輸入資料流讀取一或多個字元。

int_type get();
basic_istream<Elem, Tr>& get(
    Elem& _Ch
);
basic_istream<Elem, Tr>& get(
    Elem *_Str,
    streamsize _Count
);
basic_istream<Elem, Tr>& get(
    Elem *_Str,
    streamsize _Count,
    Elem _Delim
);
basic_istream<Elem, Tr>& get(
    basic_streambuf<Elem, Tr>& _Strbuf
);
basic_istream<Elem, Tr>& get(
    basic_streambuf<Elem, Tr>& _Strbuf,
    Elem _Delim
);

參數

  • _Count
    strbuf 讀取的字元數。

  • _Delim
    應該結束讀取的字元是在 _Count之前發生。

  • _Str
    的字串編寫的。

  • _Ch
    取得的字元。

  • _Strbuf
    的緩衝區寫入。

傳回值

無表單取得傳回項目讀取為整數或檔案結尾。其餘的形式傳回資料流this(*)。

備註

第一個未格式化的輸入函式擷取項目,如有可能,,則會傳回 rdbuf- >sbumpc。否則,會傳回 traits_type::eof。如果函式未擷取項目,它會呼叫 setstate(failbit)。

第二個函式擷取 int_type 項目 meta 方式相同。如果 meta 等於 traits_type::eof,函式會 setstate(failbit)。否則,它會在 _Ch儲存 traits_type::to_char_type(meta)。函式會傳回 *this

第三個函式傳回 get(_Str, _Count, widen(「\n」))。

第四個函式從陣列開頭捕捉 _Count - 1 項目並將其儲存在 _Str。它只儲存它儲存 char_type ,任何捕捉的項目之後。依照中的測試順序,擷取停駐點:

  • 在檔案結尾。

  • 在函式擷取等於 _Delim的項目之後,,在已經放回到受控制序列的情況下。

  • 在函式之後擷取 _Count - 1 個元素。

如果函式未擷取項目,它會呼叫 setstate(failbit)。不論是哪種情況,則會傳回 *this

第五個函式傳回 get(strbufwiden(「\n」))。

第六個函式在 strbuf擷取項目並插入資料錄。擷取在文件結尾或在等於 _Delim*,* 沒有捕捉的項目。它也會停止,,而不需要擷取該項目,則為,如果插入失敗或擲回例外狀況,但會攔截的例外狀況 (不會重新擲回)。如果函式未擷取項目,它會呼叫 setstate(failbit)。在任何情況下,函式會傳回 *this

範例

// basic_istream_get.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;

int main( ) 
{
   char c[10];

   c[0] = cin.get( );
   cin.get( c[1] );
   cin.get( &c[2],3 );
   cin.get( &c[4], 4, '7' );

   cout << c << endl;
}
  

需求

標題: <istream>

命名空間: std

請參閱

參考

basic_istream Class

iostream 程式設計

iostreams 慣例