코드
2018.06.05 19:56

매우 특이한 버그

조회 수 569 추천 수 1 댓글 9
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form
라이선스 GPL v2

#include<stdio.h>
 
int main()
{
    int i,j;
    int a[10][11];
 
    for(i=0;i<10;i++)
        for(j=0;j<11;j++)
            scanf("%d",&a[i][j]);
 
    for(i=0;i<10;i++)
    {
        int safe = 0;
 
        printf("a[10][%d] = %d\n",i,a[i][-3]);   /// 여기
 
        if(a[i][10] == 1)
        {
            safe = 1;
            printf("%d exist \n",i+1);
 
            for(j=10;j>=0;j++)
            {
                if(a[i][j] != 0)
                {
                    printf("%d died\n",i+1);
                    if(a[i][j] > 0)
                        printf("%d crash\n",i+1);
                    if(a[i][j] < 0)
                        printf("%d fall\n",i+1);
                    safe = 0;
                    break;
                }
            }
        }
 
 
        if(safe == 0)
            continue;
        printf("%d safe\n",i+1);
    }
}


http://codeup.kr/JudgeOnline/problem.php?id=1509 

코드업 - 진격 후 결과


코드업 - 진격 후 결과


이 프로그램을 만들고 있었는데 버그가 나서 위 주석 달아늫은 printf 문에서 시험을 하고 있었는데 놀랍게도 대각선으로 출력이 되는듯이 출력이 되었습니다. 그래서 지우고 다시썻는데 말끔히 사라지더군요. 왜 그랬을까요?(참고로 codeblocks 씁니다) 

TAG •
  • profile
    네모 2018.06.06 17:00

    C에서 배열인덱스를 음수값으로 해서 접근이 가능했었나요...?
     
    a[i][-3]

  • ?
    title: 대한민국 국기gimmepoint 2018.06.06 18:00
  • ?
    포인트 폭탄+ 2018.06.06 18:00
    gimmepoint님 축하합니다.
    추가로 200포인트만큼 포인트 폭탄+를 받았습니다.
  • ?
    title: 대한민국 국기gimmepoint 2018.06.06 18:00
    버그인가?
  • profile
    네모 2018.06.06 18:05
    그러네요. 확인해보니 초기화가 되어 있으면 접근 가능하다고 되어 있군요....
    오류의 원인이라고 하면 [-3]이 초기화 되어 있지 않은것 때문이 아닐까 싶습니다.
  • profile
    title: 황금 서버 (30일)humit 2018.06.07 18:00
    컴파일러마다 동작이 달라지겠네요.
    컴파일러에서 배열을 연속으로 배정하지 않을 수도 있으니까요.
  • ?
    title: 대한민국 국기gimmepoint 2018.06.07 18:02
    그런가요?
  • profile
    title: 황금 서버 (30일)humit 2018.06.07 18:27
    아 배열은 연속적으로 할당할 수밖에 없겠네요. 다만 변수 사이의 패딩(?)이 어떻게 할당 되느냐와 쓰래기 값이 어떻게 되어 있느냐에 따라 달라지겠네요
  • ?
    title: 대한민국 국기gimmepoint 2018.06.07 18:32
    그렇군요

  1. AWSCLI, in a single file (portable, linux)

    Date2021.04.10 Category코드 BySeia Views165
    Read More
  2. 도박 중독자를 위한 광고 차단 규칙

    Date2020.08.21 Category코드 By제르엘 Views294
    Read More
  3. 내가 만든 merge sort

    Date2018.05.17 Bytitle: 대한민국 국기gimmepoint Views370
    Read More
  4. 내가 만든 함수 모음집 2

    Date2018.05.12 Category코드 Bytitle: 대한민국 국기gimmepoint Views379
    Read More
  5. 미완성 받아쓰기 (C)

    Date2018.04.20 Category코드 Bytitle: 대한민국 국기gimmepoint Views380
    Read More
  6. 내가 만든 함수 모음집

    Date2018.05.08 Category코드 Bytitle: 대한민국 국기gimmepoint Views382
    Read More
  7. C언어 삼중자를 이용한 코드

    Date2018.07.22 Category코드 Bytitle: 황금 서버 (30일)humit Views410
    Read More
  8. Koa에서 자동으로 라우팅 채워주기

    Date2020.01.22 Category코드 BySeia Views437
    Read More
  9. JavaScript에서 파이썬 문자열 처리 함수 중 하나 (바인딩)를 구현

    Date2020.01.20 Category코드 BySeia Views463
    Read More
  10. [JS] 클라이언트단 GET Parameter

    Date2019.11.16 Category코드 ByHanam09 Views467
    Read More
  11. 아주 간단한 기초 C++

    Date2018.04.21 Category코드 By제르엘 Views477
    Read More
  12. c 이진트리 전,중,후위 알고리즘

    Date2018.04.24 Category코드 Bytitle: 대한민국 국기gimmepoint Views495
    Read More
  13. 파이선 셸에서 실행하면...?

    Date2018.07.22 Category코드 By제르엘 Views499
    Read More
  14. HEX를 RGB로, RGB를 HEX로 바꾸는 PHP 코드

    Date2018.05.05 Category코드 By네모 Views507
    Read More
  15. 내가 만든 사칙연산 계산기

    Date2018.05.11 Category코드 Bytitle: 대한민국 국기gimmepoint Views515
    Read More
  16. 링크 파싱 애드온용 스킨 (트위터 스타일)

    Date2017.10.03 Category자료 BySNAX Views516
    Read More
  17. [Python] 모 정부기관 사이트 파싱 후 PC 통신처럼 열람하고 싶은 게시글 번호를 입력하면 내용을 보여주는 소스 (허접)

    Date2018.09.14 Category코드 By이니스프리 Views559
    Read More
  18. Hello, World!를 출력해보자

    Date2018.04.21 Category코드 By네모 Views568
    Read More
  19. 매우 특이한 버그

    Date2018.06.05 Category코드 Bytitle: 대한민국 국기gimmepoint Views569
    Read More
  20. [1.8a] Bootstrap 'Panel' 위젯 스타일

    Date2017.08.09 Category자료 Bytitle: 은메달도다 Views602
    Read More
Board Pagination Prev 1 2 3 4 Next
/ 4