私はC++を学んでおり、プロジェクトにパスカルの三角形を出力して(n行の計算後に)、このような出力を得て、ストリングストリームの "バッファ"に格納しますstringstreamをインデント/センタ出力に使用する
1
1 1
1 2 1
1 3 3 1
しかし、私がしたいことは、むしろ
1
1 1
1 2 1
1 3 3 1
私の考えでは:最後の行と現在の行の長さ(私は最後のものが最長であることを知っている)の違いを計算します。その後、各行をスペースで区切ります(行長差の半分)。 私の問題は今ある:
- は、私がどのようにgetlineの作品を取得しませんでした、どちらも私は特定の抽出する方法を - 私は知りません(>最後の)行
- をし、1を編集する方法を見つけることができませんでしたストリングストリーム内の特定の行
どういうわけか私はストリングストリームを使用する最良の方法ではないと感じています。
これはむしろよくある質問です。この問題をどのように解決し、可能であればストリングストリームで解決しましたか?
http://www.cplusplus.com/reference/iostream/manipulators/setw/これを見てください – v01d
ちょうど明確にするために、あなたは自分自身と印刷の価値を計算していますか?または、それらを解析して再印刷していますか? – Benj
私は自分自身を計算し、私はsetwを見てみるつもりです、良い方法だと思われます:-) – AnatraIlDuck