C言語なら俺に聞け( ..
12:983,994
08/11/15 14:17:40
>>2,3
なるほど.よくわかった.
小さな机ってのは,多分アキュムレータのことだよな?
アセンブラの方を思い出して想像してみるとよくわかった.
大学で
関数のreturnにはstaticな変数を用いろって話だったんだ.
理由は前スレ>>983で書いてる通り.
それであんな質問をしたんだが,return文は引数と同じで値渡しでOK?
さっきから皆ポインタがどうとかって言ってるけど,それはこういうことだよな?
char *func4(char *a,*b) {
static char s[50];
sprintf(s,"%s%s",a,b);
return s;
}
例なのでバッファオーバーランの話はなしで.
もし.sをstaticで宣言してなかったら,
sのアドレスは正しく返るけど,返したアドレスが指すところはいつ書き換えられてもおかしくない.
ということだよな?
return文が値渡しってのは,みんなどこで知ったんだ?
仕様書とかに書いてある?
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5380日前に更新/21 KB
担当:undef