問題タブ [double-pointer]
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# - C#でジャグ配列からダブルポインタに変換する
ここでの簡単な質問:ジャグ配列からダブルポインタに変換する方法はありますか?
double[][]
例:に変換double**
残念ながら、これは(昔ながらのCのように)残念ながらキャストするだけでは実行できません。ステートメントを使用してfixed
も問題は解決しないようです。C#でこれを達成するための(できれば可能な限り効率的な)方法はありますか?簡単な解決策を望んでいますが、解決策はまったく明白ではないかもしれません。
c - ダブルポインタにメモリを割り当てますか?
ダブルポインターにメモリを割り当てる方法がわかりません。文字列の配列を読み取って保存したい。
これの代わりに、大きなメモリブロックを割り当てて文字列を保存するだけです
それは間違っているでしょうか?もしそうなら、それはなぜですか?
c - 関数から返された const char* を C の const char** に正しく変換するにはどうすればよいですか?
要するに、私はこれをしたいと思います:
ただし、右辺値に & を使用できないことは理解しています。だから私はこれにこだわっています:
2行で生活できます。このハックで問題が発生していますか? stringPtr
宣言されている関数から抜け出すことを恐れる必要はありませんよね?
編集: もともと完全なコンテキストを含めていなかったことをお詫びします。私は、グラフィックに OpenGL を使用して C でゼロからビデオ ゲームを構築するという夏のプロジェクトを引き受けました。libconfigを使用して、テキスト ファイルから構成データを読み取っています。
構成ファイルから特定の文字列を見つけるための便利な関数の 1 つは、次のようになります。
その値が割り当てられる方法は、関数value
に uninitialized を指定すると、未定義のガベージを逆参照しようとすることを意味します。これにより、ほとんどの場合、segfault が発生します。この問題に対する私の現在の回避策はvalue
、次のように、最初に別のポインターに初期化することです。
そのため、この 2 段階の初期化を実行する必要がないように、関数の最後の部分を書き直す最善の方法を見つけようとしています。変更された関数は次のようになると考えていました。
c++ - リンクされたリストの先頭の二重ポインタの受け渡し
私はこれをいくつかの本/チュートリアルで見ました。
(リンクされたリストの) ヘッド ポインターを関数に渡すときは、ダブル ポインターとして渡す必要があります。
例: // これは、head が最初のノードを指すリンク リストを反転します。
これはうまくいきます。
次のような単一のポインターを使用する場合にも機能します。
ヘッドポインタを使ってリストを印刷してみました。どちらの機能も正常に動作します。
何か不足していますか?
ありがとう、
c - Cでcharへのポインタの配列をqsortする方法は?
Cでcharへのポインタの配列があるとします。
そして、qsortを使用してこの配列をソートしたいと思います。
比較機能が思いつかない。何らかの理由でこれは機能しません:
多くの検索を行ったところ**
、qsort内で使用する必要があることがわかりました。
そして、これは機能します。
*(const char **)name1
誰かがこの関数での使用法を説明できますか?全くわかりません。なぜダブルポインタなのか?元の機能が機能しなかったのはなぜですか?
ありがとう、BodaCydo。
c - 互換性のないポインタ型の警告からの初期化。問題が見つかりません
この警告が私のアプリをクラッシュさせていると思います。iOSアプリにObjective-cを使用しています。Xcodeはスタックトレースなどを提供しません。役に立たなかった。
私はこの割り当てをグローバル変数として持っています:
したがって、search_positionsは、整数ポインターへのポインターへのポインターではないでしょうか。
なぜこれが「互換性のないポインタからの初期化」を与えるのですか?
確かに、これは、current_orientationによってオフセットされた、配列から整数ポインターへのポインターを取得しますか?
私がここで欠けているものは何ですか?私は今までにポインタを知っていると思いました。:(
ありがとうございました。
c++ - ダブルポインタの空きスペース(NULL)をチェックする方法
'if'条件を使用して、オブジェクトの場所が空かどうかを確認しようとしています。私はこれにダブルポインタを使用しています。以下のコードを参照してください。
このループでは:
[clmn] [row]にオブジェクトがあるかどうかを確認しようとしていますが、これにはNULLを使用しています。これは間違っています。これをどのように実装するのですか。この点で私を助けてください。
c++ - 添え字演算子をオーバーロードし、ダブルポインターを使用していますか?
使用する必要がある次の変数があり、割り当てのために独自のラッパーを作成する必要があります。私は割り当てを超えて (作成したこのラッパーを使用する必要があるため)、ダブルポインター配列で使用するために、ラッパーで添字演算子をオーバーロードしたいと考えています。コードでの意味は次のとおりです。
私が持っているもの:
ライブラリの指定されたヘッダーから:
私のクラス(もちろんヘッダーに含まれています):
もちろん、ダブルポインターはポインターを返すため、これは機能しません。これは、返すように指示しているものではありませんが、 *pixels& を返しても返されません。私の好奇心を満足させ、なぜこれが不可能なのかを理解するのを助けるために、誰かがこれを実装する方法を教えてもらえますか? 私はまだポインターをよく理解していないことを覚えておいてください (ポインターがどのように機能するかの基本は知っていますが、それだけです)、これを使用して理解を非常に広げたいと考えています。
c - ダブルポインタのアドレスを別のダブルポインタに渡す方法
ダブルポインタのアドレスを他のポインタに渡すにはどうすればよいですか?私はこのコードを持っており、コメント行を設定した場合にのみ正しく機能します。なぜサイズが違うのですか?
c++ - 読み取り専用のダブルポインタを返す
ダブルポインタであるメンバー変数が欲しいです。オブジェクト、ダブルポインタが指すものは、クラスの外部から変更してはなりません。
次の試行では、 「'std ::string**'から'conststd ::string**'への無効な変換」が生成されます。
- 単純なポインターだけを使用する場合、同じ構成が有効なのはなぜですか
std::string *myPrivate
読み取り専用のダブルポインタを返すにはどうすればよいですか?
明示的なキャストを行うのは良いスタイル
return (const std::string**) myPrivate
ですか?