問題タブ [const-char]

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.

0 投票する
1 に答える
295 参照

c# - c++ と c# の間でヌル文字を含む文字列を渡す方法は?

C++には、たとえばいくつかの文字列があります string str = "a\0b\0c";

そして、この文字列を "\0" の後にデータを失うことなく C# に渡し、C# から C++ にデータを失うことなく渡す必要があります。

手伝って頂けますか?

0 投票する
2 に答える
1194 参照

c++ - c_str() と const char による適切なメモリ クリーンアップ *

(char* const*) を取る関数があります。私が提供するデータは std::string です。だから私はこれをやっています:

これはうまくいきます。私の質問は、const char ala で使用されるメモリをクリーンアップする必要があるかどうかです。

または、cc は std:string 内のメモリの場所へのポインタにすぎません...

0 投票する
2 に答える
1064 参照

c++ - Calculator 08 バグのあるプログラム - デバッグの問題

C++ プログラミングの原則に関する Stroustrup の本の最初の課題を解決しようとしています。私は2つの問題でかなり立ち往生しています。

1 つ目は、コンパイル時エラーが 3 つあると彼が言っていることですが、私は 1 つしか確認できません。2 つ目の答えは、それがどのような問題なのか、もっと詳しく説明してもらえないかということです。

彼はトークンの構造体を作成し、名前と対応する値を格納する変数の構造体も作成しました。についてのコンパイル時エラーを解決する方法がわかりません return Token(name,s);。const char 名を文字列に変換することは不可能であると (正しく) 述べています。文字列として宣言して作業して変換しようとしましたが、うまくいきませんでした。

助けてください。

どうもありがとうございました!

レオ

0 投票する
2 に答える
5016 参照

c++ - const_cast を使用して constness をキャストする

いいえ。この質問は 、static_cast、dynamic_cast、const_cast、および reinterpret_cast を使用する必要がある場合の重複ではありません。

ここでの質問は、重複として説明されているリンクとはまったく異なります。

最初の質問: 以下の 2 つのケースで const_cast を使用しています。そのうちの1つが機能します。もう一方はそうではありません。

1. int* const //動作します。

この構文では、変数が指すアドレスは変更できません。だから私は以下のように const_cast を使用し、それは動作します:

2. const int* //動作しません。

指しているアドレスは変更できますが、値は変更できません (ただし、変数を別のアドレスに指し示すことで変更できます)。私が使用している const_cast は、ここでは機能しないようです:

だから私はさまざまな方法で以下のように型キャストしようとしましたが、何も機能しません:

2 番目の質問: すべてのキャストは、ポインターと参照に対してのみ使用できますか? 次の例は、ポインターまたは参照が画像にない場合は無効ですか?

0 投票する
3 に答える
1276 参照

c++ - C++: const char* 配列を出力しようとするとプログラムがクラッシュする

ユーザーに名前、年齢、受講したクラスを入力させるプログラムがあります。これらのクラスは、char の 2 次元配列として main() 関数に格納され、次に、この配列を m_CourseNames と呼ばれる public メンバー const char* 配列にコピーする Student クラス内の関数に渡されます。このプロセスが正常に完了することを CLion のデバッガーで確認しました。

ただし、exit code 11m_CourseNames 配列を反復処理してその内容を画面に出力しようとすると、プログラムがクラッシュします。

次の方法で配列を画面に出力しようとしました。

  1. メイン関数では:

    /li>
  2. を介して呼び出すことにより、学生クラスのメンバー関数でstudent.getCourses();

    /li>
  3. 1) と同じメソッドを持つオーバーロードされた演算子関数の内部 (ここで試した理由を理解するには、コードを参照してください)

const char* 配列を画面に出力しようとする 3 つの方法すべてで、プログラムが終了する前に次のエラー コードが発生しました。

配列が public メンバー変数の場合、反復しない理由がわかりません。デバッガーは、すべてのクラスが適切に格納されていることを確認したため、addCourses() 関数の責任ではありません。

以下のプログラム全体を参照してください (コメントアウトされているものはすべて、配列を画面に出力しようとする試みです)。

0 投票する
2 に答える
328 参照

c - ブラックジャック ゲーム C で int 値を const char 配列に割り当てるにはどうすればよいですか

私は C でブラックジャック ゲームに取り組んでいます。3 つの関数があります。1 つはデッキを埋めるため、もう 1 つはカードをシャッフルするため、もう 1 つはカードを配るためです。私の問題は、カードに整数値を与える方法がわからないことです。誰が勝つかを確認するために必要です。これを解決する方法についてのいくつかの意見をいただければ幸いです。