2D그래픽을 사용하는 게임을 만드는 도중...

네모 모양의 테두리를 그리는 함수를 만드는 중이었습니다.

//        가로선을 그린다.
        for ( j = CursorXpos; j++; j < CursorXpos2 )
        {
                Screen[CursorYpos * ScreenWidth + j] = DLG_OUTLINE_COLOR_16BIT;
                Screen[y2 * ScreenWidth + j] = DLG_OUTLINE_COLOR_16BIT;
        }
        //        세로선을 그린다.
        fo


그런데 아무리 컴파일을 해봐도 실행하면 자꾸만 에러가 나는 것이었습니다. 도대체 왜 그런가...... 몇시간을 궁리했습니다.

값을 체크하고 또 체크해보고 화면에 숫자까지 출력해보고 확인해봤으나 틀린 점은 아무것도 없었습니다. 혹시 이것이 말로만 듣던 컴파일러 버그인가?!!!!

라고 생각도 들다가, 초심으로 돌아가기 위해 조금 변수이름이 복잡하지 않은 알기쉬운 다른 테스트코드를 만들어서 돌려보려 하던 중......

유심히 코드를 바라보니 for문이......

for ( j = CursorXpos; j++; j < CursorXpos2 ) ...... 이렇게 되어있었던 것이었습니다......

변수명을 CursorXpos1, CursorXpos2 에서 좀더 알기쉬운 x1, x2 등으로 바꾸어서 코드를 만들려고 보니......

for ( j = x1; j < x2; j++ ) x1이나 x2라는 변수이름의 사용은 거의 버릇이 되서 저도 모르게 저렇게 써지는 것이었습니다............ x1이나 x2 변수는 워낙 자주 써서 거의 버릇이 되서 써지는데 좀 낯설은 변수를 이름으로 썼더니 이런 단순한 곳에서도 헷갈리는군요 아아.........