1

私は整数を読みました:

is >> myInteger;

ここで、読み取られた桁数を知りたいと思います (先行ゼロの可能性について話している)。どうやってやるの?

4

2 に答える 2

5

あなたはできる:

  • 値を文字列として取得し、必要に応じて個別に解析します(長さを確認する、ゼロをカウントするなど)。

  • これには is.tellg を使用します。tellg は、それらの位置にあったものではなく、バッファー位置を提供することに注意してください (スペース文字またはゼロである可能性があります)。

  • is.get を使用してバッファを文字単位で読み取り、必要に応じて値を処理します。

于 2014-07-02T10:02:51.570 に答える
2

整数をストリーミングする前にis.tellg()の値を取得してから、再度取得して違いを見つけることができます。

EDIT :コメントで指摘されているように、ストリームの要素がいくつ消費されたかがわかりますが、その一部は空白である可能性があります。

于 2014-07-02T09:56:48.467 に答える