>関数内の変数について入力中の回答があります。ページを離れますか?※ページを離れると、回答が消えてしまいますページを離れるA回答を続ける入力中のお礼があります。13:15回答数:2件g++やgccで関数内で定義した変数をレジスタに割り当てる方法が知りたいです。あと、関数内で定義した変数は、スタック上やヒープ上に作られると思いますが、この基準はどうなっているのでしょうか?通報するこの質問への回答は締め切られました。g++やgccで関数内で定義した変数をレジスタに割り当てる方法が知りたいです。関数内で定義した変数は、スタック上やヒープ上に作られると思いますが、この基準はどうなっているのでしょうか?GCCでもターゲットによって事情は異なりますが...記憶クラス指定子がないか、autoまたはregisterを付けた場合、割付け可能なレジスタがあればレジスタに割付けられます。なければスタックに割付けられます。volatile修飾子を伴う場合は、上記の場合でも必ずスタックに割付けられます。reallocで割付けた場合です(間接的にそれらの関数を呼び出すものも含む)。それ以外では、C++で、送出された例外オブジェクトがヒープに割付けられます。*レジスタに割り当てられ易くなります*。強制的にレジスタに割り当てる方法は言語としてはありません。コンパイラの最適化能力次第です。スタックとかヒープとかは環境依存/実装依存の話ですから、これもコンパイラの実装次第ですが、newやmallocなどで確保したものが一般にヒープに、その他のものは一般にスタックにとられるといわれます。具体的な割り当てはコンパイラが良しなにやるものです。C++:ある関数を定義するときに別の関数を用いて定義はできないのですか。C/C++言語で変数名から変数のアドレスを取得する方法があれば、ご教示願います。C++の関数をfortranから呼びたい。C++の関数をfortranから呼びたい。c++からdll内の関数を呼ぶ記述方法が知りたいです。VC++でクラス変数の定義方法。Inc.Q質問する(無料)Q&A検索goo検索gooIDで新規登録・ログイン新規登録する(無料)会員の方はこちら外部サービスのアカウントで新規登録・ログインYahoo!で新規登録・ログインGoogleで新規登録・ログインTwitterで新規登録・ログインFacebookで新規登録・ログインdアカウントで新規登録・ログイン※各種外部サービスのアカウントをお持ちの方はこちらから簡単に登録できます。お客様の許可なしに外部サービスに投稿することはございませんのでご安心ください。会員でない方、会員になるとあなたも質問や回答ができるようになります!!親切・丁寧な回答が集まる場30分以内に回答がもらえ回答数は平均3件!匿名(ニックネーム)での投稿なので。