STDを使用してC ++を[ターン] :: noskipwsは空白文字を読みます

空白文字入力を読み取るためにどのようにそれをストリーミング?

標準のフローでは、skipwsタグがあり、デフォルトは空白文字の読み、彼らは破棄されるときにことを示し、設定されています。このフラグをクリアすることができますはstd :: noskipwsマニピュレータを使用します。

cin >> std::noskipws;

ケース:

#include <iostream>
#include <sstream>

int main()
{
        char a, b, c;

        std::istringstream iss("  123");
        iss >> std::skipws >> a >> b >> c;      // 忽略掉前面的空白字符,PS: 默认std::skipws是置位的
        std::cout << a << b << c << std::endl; // 123

        iss.seekg(0);
        iss >> std::noskipws >> a >> b >> c; // 不忽略空白字符,将其读取
        std::cout << a << b << c << std::endl; // ..1

        return 0;
}

参考:http://www.cplusplus.com/reference/ios/noskipws/

---------------------
著者:Demon90s
出典:CNBLOGS
オリジナル:https://www.cnblogs.com/demon90s/p/7704502.html
免責事項:この記事作者オリジナルの記事は、再現し、ボーエンのリンクを添付してください!

おすすめ

転載: www.cnblogs.com/shawnchou/p/11368189.html