アカウント名:
パスワード:
プログラムの基本として、全てのバッファに対して...
少なくとも文字列処理について言えば、そもそも自前でバッファを確保して使おうなどとするのが、時代遅れで、無粋で、効率の悪いプログラミングスタイルでしょう。別途入念に作られた汎用文字列操作ライブラリを使うことを考えてみるべきです。
そうした汎用ライブラリを使うと、文字列格納のためのメモリがヒープ領域に
それすら行われておらず、そこら中に char buf[1024] などというコードが散乱していることが多い、というのが現状
固定長バッファが使われること自体は、バッファオーバーフローの引き起こされ易さと何の関係もない。
「何の関係もない」という日本語の使い方が間違っていませんか? 「固定長バッファを使っていてもバッファオーバーフローし
「何の関係もない」という日本語の使い方が間違っていませんか?
間違ってませんね。大元のコメント [srad.jp]は
プログラムの基本として、全てのバッファに対してオーバーフロー等が生じないようにコーディングするのが普通
「なのになぜこんなに?」という質問です。それに対しあなたは
そこら中に char buf[1024] などというコードが散乱していることが多い、というのが現状ではないでしょうか。
と、固定長バッファを使用したコードはあたかも必ずバッファオーバーフロー
その質問に対しては他の方から「完全な人間なんていないから」というある種の根源的な回答が既に出ていましたから、私は、別の観点からの解決法として、そもそも「バッファを自前で用意しない」という話を持ち出しました。その流れで、 「そこら中に char buf[1024] などというコードが散乱していることが多い、というのが現状」 と発言したもので
単に固定長のプログラムが多いから、バッファオーバーフローを指摘されるプログラムも固定長が多いというだけかもしれませんよ? そうではないというのであれば、具体的な統計データなり何なり出してください。
頻度から言えば固定長でバッファオーバーフローしないコードの方が圧倒的多数だと思いますが?
単に固定長のプログラムが多いから、
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs
バッファオーバーフローについて(識者に質問) (スコア:0)
Re:バッファオーバーフローについて(識者に質問) (スコア:1)
少なくとも文字列処理について言えば、そもそも自前でバッファを確保して使おうなどとするのが、時代遅れで、無粋で、効率の悪いプログラミングスタイルでしょう。別途入念に作られた汎用文字列操作ライブラリを使うことを考えてみるべきです。
そうした汎用ライブラリを使うと、文字列格納のためのメモリがヒープ領域に
とは言ってもね… (スコア:0)
なんて知りませんがな。
無学なモンで、Win上で使える汎用文字列操作ライブラリっつーたら、
STLのbasic_string (ロケール対応が貧弱) か
MFCのCString (色々貧弱) しか思いつきません。
…きっと素晴らしいライブラリを教えてくれるんだろうと願いつつ。
Re:とは言ってもね… (スコア:1)
Re:とは言ってもね… (スコア:0)
Re:とは言ってもね… (スコア:1)
「何の関係もない」という日本語の使い方が間違っていませんか? 「固定長バッファを使っていてもバッファオーバーフローし
Re:とは言ってもね… (スコア:0)
間違ってませんね。大元のコメント [srad.jp]は
「なのになぜこんなに?」という質問です。それに対しあなたは
と、固定長バッファを使用したコードはあたかも必ずバッファオーバーフロー
Re:とは言ってもね… (スコア:1)
その質問に対しては他の方から「完全な人間なんていないから」というある種の根源的な回答が既に出ていましたから、私は、別の観点からの解決法として、そもそも「バッファを自前で用意しない」という話を持ち出しました。その流れで、 「そこら中に char buf[1024] などというコードが散乱していることが多い、というのが現状」 と発言したもので
Re:とは言ってもね… (スコア:0)
単に固定長のプログラムが多いから、バッファオーバーフローを指摘されるプログラムも固定長が多いというだけかもしれませんよ?
そうではないというのであれば、具体的な統計データなり何なり出してください。
Re:とは言ってもね… (スコア:1)