アカウント名:
パスワード:
素のprintfはともかく、その子分が長い歴史でchar[] string = sprintf(format, (in_str1, in_str2)); とかPython風の記法にならなかったのが謎。何故に副作用を持つのだ。
上記の例だと関数がメモリ割り当ても行う必要ある?便利感とやりすぎでは感がある
strdup() [linuxjm.osdn.jp]
strdupは標準Cライブラリの関数じゃなかったような
POSIX準拠 [wikipedia.org]らしい。
それにしても、strcpy() とか strcat() とか sprintf() とかのバッファオーバーフローを誘発する関数はなぜ撲滅されないんだろう。プロジェクトごとに規約を作って使用禁止にするのが鬱陶しいのだが。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
にわかな奴ほど語りたがる -- あるハッカー
解せない標準関数たち (スコア:2)
素のprintfはともかく、その子分が長い歴史でchar[] string = sprintf(format, (in_str1, in_str2)); とかPython風の記法にならなかったのが謎。何故に副作用を持つのだ。
Re: (スコア:0)
上記の例だと関数がメモリ割り当ても行う必要ある?
便利感とやりすぎでは感がある
Re: (スコア:0)
strdup() [linuxjm.osdn.jp]
Re:解せない標準関数たち (スコア:2)
strdupは標準Cライブラリの関数じゃなかったような
Re: (スコア:0)
POSIX準拠 [wikipedia.org]らしい。
それにしても、strcpy() とか strcat() とか sprintf() とかのバッファオーバーフローを誘発する関数はなぜ撲滅されないんだろう。
プロジェクトごとに規約を作って使用禁止にするのが鬱陶しいのだが。