問題タブ [static-memory-allocation]

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 に答える
46 参照

c++11 - ポインターを介して配列を返すことが C++ で機能しないのはなぜですか?? 以下のコードを検討する

1) add(2,3) print 5、この場合、ポインターを返す print() 関数を考慮して、値がどのように取得されるか

2) 2 つの機能が格納されている場所。両方ともスタックに格納されると思いますが、print() 関数が "Hello" を出力しないのはなぜですか?

0 投票する
4 に答える
13653 参照

c - スタックまたはヒープ上の配列のメモリ割り当て (C)

次の C コードを検討してください。

上記のコードでは、arrSizeはユーザー入力から取得した配列のサイズです。次の観察が正しいかどうかを知りたいです。

  • dynArrは、実行時にヒープでメモリに割り当てられる動的配列です。dynArr のサイズは、realloc関数を使用して変更できます。

  • arr1も実行時にメモリに割り当てられますが、動的ではなく (つまり、サイズを変更できません)、Stackに割り当てられます。

0 投票する
4 に答える
2183 参照

c++ - C++ での変数のスタック メモリ割り当て

C++ コンパイラは、関数で初期化された変数をどのように整理して格納し、コンピューターがそれらを最速の方法で見つけられるようにしますか?

コンパイラがそれらをスタックに次々と配置することは理解していますが、その背後にはいくつかのロジックが必要です.Googleを何時間も検索していましたが、何も見つかりませんでした.

例えば:

これは、C++ コンパイラがメモリに格納する方法のため、以下のものよりも多くのメモリを占有するはずです。

もちろん、使用される正確なビットは同じですが、以下の例ではより効率的な順序で格納する必要があります。次の例では、これらの変数はコンパイラによってメモリ内のどこに格納されるでしょうか? 私が理解している限り、変数は常に次のようなブロックに格納されます(logical number) % (number of bytes the datatype) = 0