問題タブ [pointer-to-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.

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

c - メモリブロックを指しているポインタへのポインタ、どのポインタを解放する必要がありますか?

以下のコードの最後で、free()、array、または temp_array にプラグインする必要があるポインターはどれですか? どちらがメモリブロックを解放するか、どちらが解放されるかは問題ですか?

また、メモリを割り当てようとしているポインタが NULL の場合、realloc でメモリのブロックを割り当てることは可能ですか (つまり、最初に malloc でメモリを割り当て、後で realloc でサイズを変更する必要がありますか? malloc)?

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

c++ - Binary Search Tree 機能でポインタへのポインタを操作する際のエラー

私は次のコードを持っています:

何らかの理由で、実行時にプログラムがクラッシュしinsert(22222)ますが、以前の呼び出しには問題がなく、その理由がわかりません。問題は 26 行目から 30 行目の間にあるはずです。私は常に Node コンストラクターに NULL 値を入れているので、ループが壊れない理由がわかりません。

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

c - 関数呼び出し中にポインターツーポインターが機能しませんか?

スタック操作用のヘルパー関数を含む別のファイルを書き込もうとしています。メインファイルからスタック操作への引数としてスタックトップを参照渡ししたい。

top が変更されているため、ポインター top を参照渡ししています。しかし、それでも機能していません。どこが間違っていますか?

PS: これが Stack を実装する最良の方法ではないことはわかっていますが、それが機能しない理由を理解したかっただけです。

//Stack.h

//main.c

0 投票する
5 に答える
206 参照

c - このポインタからポインタへのポインタは冗長ですか?

コードは次のようになります。

ポインターは のようrootに使用されることはなく、常に として使用され(*root)ます。TreeNode **root冗長ではないですか?TreeNode *root関数本体の引数 と の部分を から だけに変更できますroot(*root)。そうでない場合、なぜですか?

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

c - Difference between pointer to pointer and pointer to 2d array

  1. If I have a 2d array B defined as :

    Is int **p = B same as int (*p)[3] = B ?

  2. int **f = B; printf("%d ",*f+1);

    gives 5 as output while printf("%d ",*f) gives 1 as answer. Why is that happening?

  3. printf("%d ",**f);

    returns a segmentation fault! Why?

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

c - 配列を指す変数のアドレスとその変数自体の値の差

私は配列を持っています

print ステートメントは true を返します。しかし、私がやるar+1とどうなるでしょうか&ar+1。それはどこを指していますか?

また、私が持っている場合

cpp+1 はどこを指していますか? cpそれはieの後ですか、それともcp[4]を指していcp[1]ますか?

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

c - 正確な単語数と単語の長さがわからない場合に、可能な限り最も効率的な方法で char** にメモリを割り当てる方法は?

単語数と単語の最大長がわからない場合に、char** にメモリを割り当てる方法に興味があります。複数のトークン (単語) で文字列 (char* として取得) を分割し、個別の単語を char** に保存する必要があります。*char のサイズを (文字列の長さ + 1) として割り当てることができ、各 char[i] に対しても (文字列の長さ + 1) を割り当てることができることを理解しています。文字列内の各文字を個別の単語として。したがって、コードは次のようになると思います。

それが正しいか?より効率的であれば、私はできますか?

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

c - ツリーの再帰での再割り当て

以下のhttp://www.geeksforgeeks.org/find-the-maximum-sum-path-in-a-binary-tree/のように、バイナリツリーのルートパスへの最大合計リーフを見つけようとしてい ます

1) main() でパスが出力されない理由がわかりません。これは、関数の再割り当てが間違っているためですか?

2) また、私のフリーは正しいですか?

出力: