off by one error 뜻

용어 / / 2023. 2. 9. 18:59

off by one error

반복문에서 루프가 한번 더 실행되거나 덜 실행되는 경우의 오류

 

예제

배열 arr의 인덱스는 arr[0] ~ arr[4]까지 유효하지만 아래의 반복문은 arr[0] ~ arr[5]를 탐색한다.

아래와 같이 조건문의 작거나 같다(<=)를 작다(<)라고 쓸 경우 발생할 수 있다.


int arr[5] = {1,2,3,4,5};
for(int i=0; i<6; i++){
    // processing
}

 

참고

https://en.wikipedia.org/wiki/Off-by-one_error