問題タブ [iomanip]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - std::stringstream の小数点?
sに入れる整数がたくさんありますstringstream
。ここで、s の精度を一定に保ちながら、 stringstream
s をsに変更したいと考えています。どうすればいいですか?を使用できることはわかっていますが、何らかの理由で機能していません。string
string
stringstreams.precision()
5.23\n3.134\n3.0
ではなく を返します5.23\n3.13\n3.00
c++ - C++ iomanip ライブラリの有効活用
Vector
私は C++ でクラスを作成しましたが、それは私の問題にうまく機能します。私は今それを片付けています、そして私は次のコードに出くわしました:
このコードでは、ベクトルを として出力できますstd::cout<<v<<std::endl;
。各数値には 23 個のスペースがあり、そのうち 16 個は小数です。テキストは、印刷されるように右揃えになります。
それ以外の
コードは非常に繰り返しのようです。「標準的な方法で文字を印刷しますが、この指定された形式で数字を印刷する」のようなことができるように、どのように形式 (すべてのsetiosflags
,setw
およびステートメント)を「保存」できますか。setprecision
ありがとうございました!
編集
Rob Adams のコメントに従って、私は醜いコード (他の人が指摘したように、「次の男」の精度を台無しにする) をより簡潔な (そして正しい) に変更しました。
c++ - coutを使用して0xaの代わりに0x0aを印刷するにはどうすればよいですか?
coutを使用して0xaの代わりに0x0aを印刷するにはどうすればよいですか?
c++ - cout の「固定」の反対は何ですか?
を使用する場合、ヘッダーcout
で定義されているデフォルトのフォーマッタは何ですか? <iomanip>
つまり、フォーマッタをfixed
usingcout << fixed << setPrecision(2)
に設定したら、元に戻すにはどうすればよいでしょうか? または、何に戻していますか?
c++ - std::get_timeおよびその他のロケール機能がWindowsで正しく機能しない
libc ++とそのテストをWindowsで機能させるための試みで、頭を抱えているように見えない問題が発生しました。次のコードはlibc++テストコードから取得され、Mac(およびおそらくFreeBSDも)に合格しますが、MinGW-w64またはMSVC2010SP1には合格しません。
Mac / FreeBSDのテストは合格ですが、Windowsの場合は異なる要素がすべて0です。これは、MinGW-w64 +libc++およびMSVC10+MicrosoftのSTLにも当てはまります。
これはWindowsでの単なるくだらないロケールのサポートですか、それともここで修正または回避できる間違った実装依存の仮定(入力形式)がありますか?
c++ - 永続的な IOManip を使用した C++ 出力ストリーム演算子のオーバーロード
フレンド関数を使用して、2 次元配列クラスのoperator<<
機能を提供しました。
今、私は電話したい:
そして、2 次元配列クラスで、ストリームの精度と幅を各要素に適用します。
内部には、コードに次のような行があります。
これを達成する方法について何か考えはありますか?
ありがとう!
c++ - iomanipを使用して、Qtを使用してデータ出力をテキストファイルにフォーマットします
私はQTを使用して仕事の開発とアプリケーションを行う学生プログラマーです。現在、テーブルからデータを取得してファイルに保存する保存機能を開発しています。データを列に書き込もうとすると、問題が発生します。誰かを混乱させないでください。私の問題は、データテーブルから保存するときにテキストをフォーマットすることです。それを読んでいない。したがって、現在、データがテーブルから保存されると、ファイルに保存され、次のようになります。
私はそれがこのように見える必要があります
調査中に、c ++のiomanipライブラリからsetwに出くわしました。このライブラリは、データを入力するための最小文字数を設定し、残りをパディングとして使用します。完璧に聞こえますか?問題は、cout以外のもので動作させることができないことです。それは私がそれを必要としているものではありません。基本的に、書き出す前に文字列にスペースを追加する必要があります。
また、Qtには、ここで必要なことを達成するのに役立つ何かがあるはずだと思います(かなり簡単です)。QStringドキュメント、QStringList Doucmentation、およびほとんどすべてのQTextStreamドキュメントを参照した後、このメンバー関数を見つけることができないようです。
現在、私の保存機能は次のようになっています。
setFieldWidthがQTextStreamドキュメントからの私の答えであると確信しています。しかし、私はそれを正しく機能させることができません。試した:
私はこれが誰かにとって簡単な答えであることを望んでおり、私はちょうどいくつかのライターズブロックに遭遇していますが、これを達成するためにどんな助けも必要です。私の投稿を読んでくれてありがとう、そしてここのギャップを埋めるために貢献してくれた助けに感謝します!
c++ - std :: left/rightでのIomanipエラー
線の片側を左揃えにし、線の反対側を右揃えにしようとしていますが、右側を右揃えにするのに問題があります。誰かが私のエラーをキャッチできますか?
出力はすべて左揃えになっていますが、これをすべて右揃えにするために何をする必要があるのかわかりません。ありがとう!
c++ - std::setw を使用した後、ストリームから出力するときに幅をクリアする方法は?
std::stringstream を使用して、固定形式の文字列を値に解析しています。ただし、解析される最後の値は固定長ではありません。
そのような文字列を解析するには、次のようにします。
しかし、文字列の残りの部分が出力されるように幅を設定するにはどうすればよいでしょうか?
試行錯誤の結果、これが機能することがわかりました。
しかし、正しいアプローチは何ですか?