名稱空間
變體
操作

std::ungetwc

來自 cppreference.com
< cpp‎ | io‎ | c
 
 
 
 
在標頭檔案 <cwchar> 中定義
std::wint_t ungetwc( std::wint_t ch, std::FILE* stream );

如果 ch 不等於 WEOF,則將寬字元 ch 推入與流 stream 相關聯的輸入緩衝區,以便後續的從 stream 讀取操作將檢索該寬字元。與流相關聯的外部裝置不會被修改。

流重定位操作 std::fseekstd::fsetposstd::rewind 會丟棄 std::ungetwc 的效果。

如果在沒有 intervening 讀取或重定位的情況下多次呼叫 std::ungetwc,它可能會失敗(換句話說,保證大小為 1 的回推緩衝區,但任何更大的緩衝區都是實現定義的)。如果執行了多次成功的 std::ungetwc,讀取操作將以 std::ungetwc 的反向順序檢索回推的寬字元。

如果 ch 等於 WEOF,則操作失敗且流不受影響。

成功呼叫 std::ungetwc 會清除檔案結束狀態標誌 feof

在流(無論是文字流還是二進位制流)上成功呼叫 std::ungetwc 會以未指定的方式修改流位置指示器,但保證在透過讀取操作檢索所有推回的寬字元後,流位置指示器等於其在 std::ungetwc 呼叫之前的值。

[編輯] 引數

ch - 要回推的寬字元
stream - 要將寬字元回推到的檔案流

[編輯] 返回值

成功時返回 ch

失敗時返回 WEOF,給定流保持不變。

[編輯] 參閱

將一個字元放回檔案流中
(函式) [編輯]
從檔案流中獲取一個寬字元
(函式) [編輯]
有關 ungetwcC 文件
English 日本語 中文(简体) 中文(繁體)