問題タブ [ostringstream]
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++ - CRLF行末とostringstream
私はostringstreamを使用して、プラットフォームの標準の行末を使用する文字列を作成しようとしています(つまり、Windows用に開発しているので、私にとってはCRLFです)。次のコードを試しました。
ostringstreamはデフォルトでテキストモードで開かれるため、行末変換(ofstreamのように)を実行すると思いましたが、結果のcharバッファーには予想されるCRLF行末が含まれていません...。
編集:
なぜ内部でCRLFを終了する必要があるのか疑問に思った人のために:テキストをWindowsクリップボードにコピーすると、ユーザーはそのコンテンツをメモ帳にコピーすることが多く、CRLFを終了しないと、最後の操作で行末が失われます。
私の解決策:
最後に、Boostライブラリを使用して\nを\r\nに置き換えることにしました。
c++ - ostringstreamでの奇妙な振る舞い
ostringstream明示的に使用せずに、さまざまなものを関数の単一の文字列引数に連結する賢い方法を考えようとしていました。私は考えました:
ただし、与えられた:
実行時に印刷されます。
ここで、123はのASCIIコードです}。マクロを使用すると間違ってしまうのはなぜですか?
参考:現在、Xcode3.xの一部としてMacOSXでg++4.2.1を使用しています。
私が今使っている解決策
c++ - ostringstream が NULL を削除するのはなぜですか?
最後の部分 (サフィックス) を数回変更する必要がある文字列があり、新しい文字列を生成する必要があります。私が思うに、これを行うために ostringstream を使用しようとしています。ストリームを使用すると、文字列連結よりも高速になります。しかし、前の接尾辞が後の接尾辞よりも大きい場合、めちゃくちゃになります。ストリームはヌル文字も取り除きます。
出力
でも欲しいHello World。どうすればいいですか?これをより高速に行う別の方法はありますか?
編集:作品の
追加std::ends。しかし、それが内部でどのように機能するのか疑問に思っています。また、同じことを行うためのより高速な方法があるかどうかも知りたいです。
c++ - ostringstream とコピー コンストラクターの問題
重複の可能性:
stringstream のコピーが許可されないのはなぜですか?
C++であるstringstreamオブジェクトから別のstringstreamオブジェクトにコピーする方法は?
クラス T のコンパイルは、Visual C++ および GCC が iostreams テンプレート エラーを生成して失敗します。コードは次のとおりです。
ログデータ メンバー タイプを文字列に変更すると、コンパイルして正常に実行できます。これは正当な行為ですか?
c++ - ostringstream operator<< 長いですか?
私はC ++に少し慣れていないので(プログラミングやオブジェクト指向の設計などはそうではありません)、間違っているだけだと思います。実際には、上記の unsigned long long は、ターゲット プラットフォーム (上記および Linux 2.6 の g++ 4.4.1) では符号なし 64 ビット整数に相当し、同じことになる別の型も許容されます (しかし、私は何も見つけていません)。 .)
ostringstream を使用して、この (または類似の) タイプをフォーマットできますか? そうでない場合、stdio と snprintf をドラッグせずに実行できますか? より哲学的に言えば、cout がそれを実行できるタイピングはどのように機能するのでしょうか? また、その機能が文字列ストリームのものに拡張されなかったのはなぜですか?
c++ - boost :: tupleの`<<`演算子を書く方法は?
以下のサンプルコードでは、boost::tupleが最初のテンプレート引数から暗黙的に作成できることを示しています。<<そのため、あいまいになるため、演算子を記述できません。
ostringstream& << floatまた、なぜあいまいなのかもわかりません。これには暗黙の構造はありません。なぜこれもあいまいなエラーを出すのですか?
エラーメッセージ:
tupleTest2.C:18:エラー:ISO C ++は、最初の変換の最悪の変換が2番目の変換の最悪の変換よりも優れているにもかかわらず、これらはあいまいであると言っています。
c++ - C++で「ostringstream」オブジェクトを管理するには?
これは、C++ プログラムからのコードのスニペットです。
この関数は、int から文字列に変換された最後のインデックスを返す必要があり、それは 199 である必要があります。しかし、代わりに、このオブジェクト 'outIndex' はすべての数字 (文字列) を 1 つの文字列に連結し、結果として次のようなものを返します: 1234567891011121314151617 ... 198199 . そして間違いなく最後の数字は 199. そして、完全なループの後に関数が遭遇したすべての数字ではなく最後の数字のみを出力するように強制するにはどうすればよいでしょうか. これを行う方法?
c++ - ostringstreamまたはstringstreamを使用したC++Int to String
stringstreamに変換するために使用しIntegerてきましたStringが、同じ操作をで実行できることに気付きましたostringstream。
私が使用するとき.str()、それらの違いは何ですか?また、整数を文字列に変換するより効率的な方法はありますか?
サンプルコード:
c++ - ostringstream は未定義の型ですか?
私のC++プロジェクトでは、これをやろうとしています:
しかし、私はエラーが発生しています:
私はすでに iostream と ostream ライブラリを含めているので、なぜ ostringstream を未定義として扱っているのかわかりません...
c++ - 文字列ストリームを返す(char *)
私の教授は、calculateAreaから「area」をchar/stringとして出力することを望んでいます。彼が何を意味するのか正確にはわかりませんが、おそらくあなた方の何人かは理解しているかもしれません。
私は次のように出力を取得します:
あなたの直径は何ですか?12
あなたの和音は何ですか?10
角度:33.5573
X:3.31662インチ
h:2.68338インチ
デバッグ:面積は:18.8553インチ
デバッグ:面積は:18.8553インチ
T
tStrが指す文字列を返す方法を理解する必要があります。私が言っていることがわからない場合は、申し訳ありませんが、教授が何を求めているのかよくわかりません。