問題タブ [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++ - 前のゼロに setfill を使用していますか?
次のプログラムを実行すると、先行するゼロが正しく表示されます。
そして、次の出力が得られます。
少なくとも 6 つの整数を含む 1 行を入力してください。123 67 122 90 7674 3 000012300000670000122000009000076740000003
しかし、setw を使用する必要がある別の出力行を追加すると、突然、前のゼロが末尾のゼロに変わります。
プログラム:
この出力が得られます:
前のゼロを変更するゼロに変更しないようにするにはどうすればよいですか?
c++ - 小数点以下の桁数の精度を設定しますか?
私はすでにこのスレッドを見ましたが、setfill( '0' ) を使用する場合、負の数を使用することは考慮されていません。
この方法を使用して「5」を入力すると、「00005」と表示されます。しかし、-5 を入力すると、「000-5」と表示されます。
出力が「-0005」になるように修正するにはどうすればよいですか?
c++ - std::setw() 特殊文字を 2 文字と見なす
std::setw() が特殊文字を 2 文字と見なすのはなぜですか? これを解決する簡単でスタイリッシュな方法はありますか?
例:
出力:
これがライブテストです: http://ideone.com/q57I0H
c++ - 出力を一貫して左右に揃える
私のプロジェクトは、setw()、setfill()、setiosflags() を使用してこの出力を作成することです。
コードを使用してこれを機能させることができますが、使用するキロワットが 2 桁の場合のみです。桁数が多い場合、右詰めが機能しません。コードを編集して、3 桁、4 桁などに正しく配置できます。コードがテストされるとき、入力されるキロワットがわからないので、任意の桁数のキロワットで機能するコードが必要です。
正当化するためsetw()
に使用する場合の必要性がわかりません。andをandresetiosflags(ios::left)
に置き換えてみました。setiosflags(ios::left)
resetiosflags(ios::left)
right
left
私は、netbeans c++ を使用してコーディングし、g++ をコンパイルする C++ の初心者です。コンソール出力のフォーマットについてはあまりよく知らないので、助けていただければ幸いです。別の方法が任意のフロート長で一貫して機能する限り、上部に指定されている 3 つの関数を必ずしも使用する必要はありません。ありがとう!
c++ - Linux C++ Raw Socket Sniffer - ostringstream が導入されると recvfrom() が失敗する
printf()
出力を保存して作成する代わりに、ストリームを利用して C++ でパケット スニファーを作成しています。私が遭遇した問題は、ストリームを使用して出力を生成するステートメントが 2 つ以上ある場合にrecvfrom()
、失敗して戻ってくるように見えることです。-1
2 つの出力生成ステートメントの 1 つにコメントを付けると、プログラムは正常に実行されます。試行錯誤の結果std::setw()
、ステートメントからを削除するstd::cout
と、正しく動作し、パケットと「beef」メッセージの両方が表示されることがわかりました。
printf()
私は途方に暮れていて、この問題は一度もなかったので(そしてストリームよりも速いので)使用に戻すことを検討しているので、アイデアや助けをいただければ幸いです。私がこれを使用ostringstream
したのはこれが初めてであり、間違って使用している可能性があることを認めます.
私の簡略化されたソースコード:
次のコマンドを使用して、Centos 6.4 カーネル 2.6.32 で g++ でコンパイルされています。
g++ sniff.cpp -o sniff -Wall
アイデアや助けをありがとう、
ジェレマイア
c++ - を使用したフォーマットBloodshed での C++ の使用
関数 p1() を p2() として書き直して、p1() を正確に模倣する<iomanip>
必要があります。
型の無効なオペランド
long long unsigned int
と「未解決の関数型」をバイナリにoperator<<
コードは次のとおりです。
これが私が使用しなければならない p2() です<iomanip>
: