スマン、良く読んでなかった...
しかしそうなると
>>756
> func(){
> printf("before %f\n",hoge);
> {処理}
> printf("after %f\n",hoge);
> }
> としてhogeの値を見てみると、
(中略)
> みたいな感じで、hogeの値が変わってしまうのです。
なのに
>>763
> func内の処理の前後でhogeの値を見ても値は変わっていないのです。
> func(){
> printf("before %f\n",hoge);
> {処理}
> printf("after %f\n",hoge);
> }
> ってやって確認しました。だから処理内でおかしなことが
> 起きていないと判断しているのですが。

756と763で矛盾しているような気がする...
# 良く読んでないからか...