問題タブ [sstream]
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++ - 単一の char を std::string に変換すると、先頭に \x01 が追加されます
std::string
これらの文字列の一部に単一の文字しか含まれていない、キーとしての順序付けられていないマップから値を取得しようとしています。すべての入力は、std::stringstream
各値を取得して char にキャストし、それを を使用して文字列に変換する から来て
std::string result {1, character};
います。
ただし、そうすると、文字列の前に \x01 が追加されます (値 1 に対応します)。これにより、文字列がマップ内で見つからなくなります。私のデバッガーは、文字列のサイズが 2 で、値が "\x01H" であることも確認します。
なぜこれが起こっているのですか、どうすれば修正できますか?
c++ - stringstream C++ で文字を文字列に変換できません
私のコードにはあちこちにフランス語と英語が少し含まれていることをすべて警告するつもりです。変数や何かを理解していない場合は、質問して無料のフランス語クラスと見なしてください。学校で使用する時間割を作成するプロジェクトがあり、「時間」部分の管理、つまり教授が授業を行うための時間間隔と部屋の作成を担当しています。すべての状況が正しく機能することを確認するために、2 つのクラスが同時に同じ場所で発生しないようにする必要があります。フランス語で「AddsClass」を意味する関数「rajoutcours」では、いくつかのパラメーターを使用します。
- マチエール = 主題
- heure_deb = 開始時刻
- heure_fin = 終了時刻
- date = まあ、それはクラスの日付です
- サレ=部屋。
私の関数では、heure_start (別のクラスが開始する時刻)、heure_end (別のクラスが終了する時刻)、day と room (他のクラスが行われる日とそれらが行われる部屋) の 3 つの変数を作成します。文字列演算子「+」プロパティを使用してこれらの変数を入力し、txt ファイル (他のクラス) の行のすべての文字を 1 文字の文字列に変換して、sstream ライブラリを使用してそれらを追加できるようにします。奇妙なことに、文字列に変換されるのは 1 文字だけですが、他の文字は変換されず、その理由がわかりません。
とにかく、私はこれをよく知っていますが、何日も調べようとしてきましたが、どこに問題があるのか わかりません. ご協力ありがとうございました。
c++ - sstream 文字列の間違った出力
sstream を使用して 3 つの数字の文字列を読み込もうとしていますが、印刷しようとすると、4 つの数字で間違った出力が得られます。
コード:
出力:
入力文字列の 3 つの数値と比較して、出力に 4 つの数値が表示されるのはなぜですか?