問題タブ [stdstring]
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++ - DWORD から std::string を作成するにはどうすればよいですか?
私は次のコードを持っています:
GetLastError()
DWORD
は数値を返しますが、 のコンストラクタstd::string
は を受け入れませんDWORD
。
私に何ができる?
c++ - std :: stringの文字数を取得するにはどうすればよいですか?
C ++で文字列の文字数を取得するにはどうすればよいですか?
c++ - std::stringstream operator >> に文字列全体を強制的に読み取る方法は?
std::stringstream operator >> に最初の空白で停止するのではなく、文字列全体を強制的に読み取る方法は?
テキスト ファイルから読み取った値を格納するテンプレート クラスがあります。
ストリーム フラグの設定/設定解除を試みましたが、役に立ちませんでした。
明確化
このクラスは、型 T との間の自動変換を備えたコンテナー テンプレートです。文字列はテンプレートの 1 つのインスタンスにすぎず、他の型もサポートする必要があります。そのため、演算子 >> に std::getline の動作を模倣させたいのです。
c++ - char* を std::string に変換します
std::string
によって取得されたデータを格納するには、 を使用する必要がありますfgets()
。これを行うには、char*
戻り値を にfgets()
変換std::string
して配列に格納する必要があります。これはどのように行うことができますか?
c++ - std::string の文字参照
次の文字列があります。
myString[3] を参照しているときに、期待される '\x00' 値が得られます。
しかし、myString[5] を参照すると、'\x0d' ではなく 2 つの値 "\x0d\x0a" が得られます。
さらに興味深いのは、'\xf5' である myString[6] 値です。今回は \x0d が存在せず、正しい位置が参照されたようです。
私の質問は次のとおりです: std:string オブジェクトの \x0d 文字の特別な点は何ですか? インデックス作成時にスキップされるのはなぜですか? 数え方はこんな感じです。
コメントとして、'\x0d' 文字は 13 番目の ASCII 文字「キャリッジ リターン」であり、'\x0a' は改行文字です。
更新: std::string が "\x0d\x0a" を単一の文字と見なし、文字列内の 1 つの位置のみを占める可能性はありますか? この '\x0d' は std::string に関して「謎」の文字ですか?
c++ - std :: string ::assign()はセグメンテーション違反を引き起こします
std::vector<uint8_t>
特定のオフセットに文字列を含むがあります。短縮されたダンプは次のとおりです。
std::string
オフセット136でデータを抽出し、それを:に入れようとしています。
ただし、これにより、アプリケーションがセグメンテーション違反になります。今、私はLinuxでのソフトウェア開発にかなり慣れていませんが、GDBでアプリを起動してバックトレースを取得する方法を知っており、ここで問題を追跡しました。
印刷vec.size()
すると200が返され、ベクトルをループしてデータを印刷しても問題は発生しません(クラッシュするスニペットの真上にあります!)。
私はg++4.3.4を使用してDebianでコンパイルしています。この問題が何である可能性があるかについてのポインタはありますか?
c++ - std::stringとchar*への自動型変換のC++の違い
学習演習として、C++で自動型変換がどのように機能するかを調べてきました。自動型変換は一般的に避けるべきだと知っていますが、とにかくそれがどのように機能するかを理解することによって、C++の知識を増やしたいと思います。
StdStringConverter
自動的にに変換できるクラスを作成しましたstd::string
が、オブジェクトを実際のオブジェクトと比較すると、コンパイラ(Debianではg ++ 4.3.4)は変換を行わないようですstd::string
(参照渡しの欠如を無視してください。一時オブジェクトの不要な作成):
一方、CStringConverter
クラスに少し変更すると、自動変換が行われますが、char
ポインターの比較はおそらく私が意図したものではありません。
このコンテキストでのastd::string
とaの違いについて、コンパイラがそれらを同じように扱わないようにする特別な何かがありますか?char*
c++ - C++で文字列をargvに変換します
execvで実行するコマンドを含むstd::stringがありますが、execv()の2番目のパラメーターで必要な「char * argv []」に変換するための最良の「C++」方法は何ですか?
明確にするために:
c++ - std::string::c_str と std::string::data の違いは何ですか?
std::string::data()
なぜ電話をかけたいのstd::string::c_str()
ですか?確かに、ここには標準の狂気への何らかの方法があります...
c++ - QLineEdit で std::string を使用するには?
次の問題があります。私が書いた大きなコードを Qt インターフェイスに統合しようとしています。
私の関数のいくつかは を返しstd::string
ます。QLineEdit::setText
それらを受け入れることに成功しませんでした(他の関数が戻っchar
ても問題はありません)。
私は何をすべきか?ありがとう!
ジュゼッペ