バッファ範囲チェック
コンピューターサイエンス理論 / 全 5 枚
コンピューターサイエンス理論 - バッファ範囲チェック
書ける場所と書けない場所の境目
長さ 8 のバッファに書き込めるのは添字 0 から 7 までです。8 は 1 つ外側で、そこへ書くと隣の領域を壊します。
この 1 つのずれは、エラーが出ないまま静かに壊れることがあるので厄介です。
小なりイコールにすると 1 つはみ出します。負の添字も忘れず塞いでおきます。
function canWrite(size, index) {
return index >= 0 && index < size;
}
console.log(canWrite(8, 7)); // true
console.log(canWrite(8, 8)); // false1 / 5
← → キーでも送れます