問題タブ [multiple-indirection]

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 投票する
0 に答える
104 参照

c - execv の argv パラメータの const の正確性

重複の可能性:
C での二重ポインター const-correctness 警告

ここの表を見てください: http://pubs.opengroup.org/onlinepubs/009695399/functions/exec.html

以下は C では無効であることがわかります。

なぜこれが無効なのですか?const char * const argv[]それは ,よりも「より定数」であるように思えますchar * argv [](そしてC ++で許可されています)ので、なぜCでは無効なのですか?

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

c - void 関数による 3 次元配列の割り当て

i=0 かつ j=2 の場合、Segmentation Fault が発生します。しかし、なぜだかわかりません!

私たちを手伝ってくれますか ?

それが私の機能です:

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

c - 配列を関数に渡すときのダブル ポインター インダイレクション

アルゴリズムの知識をブラッシュアップしたかったので、次の本を使用しています:一言で言えばアルゴリズム

65 ページに、挿入ソートのアルゴリズムが掲載されています。アルゴリズムは非常に単純で、理解するのは簡単です。私の問題は、彼らがそれを実装した方法から来ています。私は主にマネージ言語 (C#/Java) で作業しているため、ポインタのカンフーはちょっとさびています。彼らが提供するコードサンプルは次のとおりです。

実際の例を得るために追加したものは次のとおりです。

これは機能しますが、理由と方法が完全にはわかりませんか? また、メイン関数で (void **) キャストが機能するのはなぜですか? ダブル ポインター インダイレクションを使用したのはなぜですか?

学校に戻ると、複数の間接参照を使用した唯一の場所は、多次元配列を動的に割り当てるときでした。私が知っている唯一の他の用途は、メソッドに渡すポインターが保持するアドレスを変更できる必要がある場合です。

さらに、コードを次のように変更したところ、問題なく動作しました。

基本的で明白な何かが欠けていると確信しています。これを読んで、1つか2つのアイデアに参加してくれた人に感謝します. 追加の詳細が必要な場合、または用語を台無しにした場合はお知らせください。

編集: 最初の cmp 関数のタイプミスを修正

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

c - より多くのレベルの間接化が C のパフォーマンスに影響を与えるか

構造体の配列を含む構造体がある場合....そして

でアクセスしたほうがいいですか

それともこれと同じですか

または、効率が失われるレベルの数に制限があり、コンパイラの最適化は何らかの効果がありますか?

提供された洞察に事前に感謝します。

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

c++ - ポインターの配列へのポインター

これを知っておくべきなのはわかっていますが、手遅れで、私の脳はピースをまとめられません.

これは、質問が得られるのと同じくらい簡単です。

私は struct を持っていitemます。その項目タイプへのポインターの配列へのポインターを作成したいと考えています。

例えば。

ArrayPointerそのポイントを配列にしたい。その配列の各要素にアイテムへのポインターを含めたいと思います。

C ++でこれを行うにはどうすればよいですか、またはより具体的には、参照解除演算子をいくつ配置する必要がありますか? 私は基本的な (単一の間接参照) ポインターを宣言する方法を知っており、それらの使用法にかなり精通しています。

可能であれば、次の手順に関する情報が必要です。

を宣言しArrayPointerます。

ArrayPointerサイズ s で を初期化しています。

ArrayPointerwithの各要素を初期化しnew itemます。

例えば:

誰かが回答を投稿するとすぐに、鼻を骨折するほど強く顔をしかめるつもりです。

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

bash - ファイル名として出力を実行する

私の Bash スクリプトの 1 つに、SCRIPTを含む変数があるポイントがあり/path/to/an/exe、スクリプトが最終的に行う必要があるのは、その実行可能ファイルを実行することです。したがって、スクリプトの最後の行は

$SCRIPT展開され/path/to/an/exe$(/path/to/an/exe)実行可能ファイルを実行します。

ただし、shellcheckスクリプトを実行すると、次のエラーが発生します。

$($SCRIPT)それをより適切な方法で書き直す方法はありますか?evalここではあまり役に立たないようです。