C言語なら私に聞け(33)
■ このスレッドは過去ログ倉庫に格納されています
0261デフォルトの名無しさん
NGNGもちろん実装によるけど...
> 呼び出し側がスタックに投げ入れるデータの量と、
> 呼び出された関数がスタックから取り出すデータの量が食い違えば、
> スタックポインタがずれて、まともに動作できなくなる。
なんてことは、普通起こらない。スタックポインタの操作は呼び出し側の仕事だから、呼び出され側がスタックから一つも読まなくても、ポインタがずれたりはしない。
つーか、printf() なんかだといくつ積まれて呼び出されるかわからないから、呼び出され側でスタックポインタの操作をしようが無い。
> とゆーシナリオを想像するんだけど、事実は知らん
今回の件は、多分 (int)1 の値とその後ろのスタックの内容を (double) として見た時に浮動小数点じゃねーぞって言って怒られたんだと思う。
> そして事実がどうであれ、保証を失う事をしておいて「なぜ?」と問う
> 自分のセンスを疑ったほうがいいのではないか。
> 「やっぱり」と思ってほしいぞ
ここは、同意。「何で、これぐらいうまくやってくんねーんだよ。」とか思う奴は、C なんか使っちゃいかん。
■ このスレッドは過去ログ倉庫に格納されています