トップページ > プログラム > 2016年10月14日 > B5drn/wa

書き込み順位&時間帯一覧

27 位/206 ID中時間01234567891011121314151617181920212223Total
書き込み数1100000000000000000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【QBASIC互換!?】FreeBasic【GPL】

書き込みレス一覧

【QBASIC互換!?】FreeBasic【GPL】
810 :デフォルトの名無しさん[sage]:2016/10/14(金) 00:53:09.58 ID:B5drn/wa
>>808
んー?
関数の引数の配列って絶えず参照渡しだから
配列全てがスタックに乗らないと思うんだけど?

>入れる文字列を20文字として
これの型は?string型?
もしそうなら、string型はポインタ、文字列の長さ、キャパシティの各4バイトの合計12バイトの
記述子分しか保持していおらず、文字列自体はヒープ領域(allocateして)に確保している
だからスタックに乗るのは記述子分だと思うんだけど

どうも見えてこないな
思うに1つの関数内でアレコレやりすぎなんじゃないの?
【QBASIC互換!?】FreeBasic【GPL】
811 :デフォルトの名無しさん[sage]:2016/10/14(金) 01:36:56.54 ID:B5drn/wa
今試しに、integer型の配列10万個を関数に渡して
関数内部でinteger型のローカル配列10万個にコピーして
その合計を返す関数を書いたけど、オーバーフローにならなかったよ
流石に100万個の場合は警告出たけど

どのような最適化が行われているか分からんけど
GAS、GCCバックエンド共に問題なかった


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。