코드
2018.06.05 19:56

매우 특이한 버그

조회 수 571 추천 수 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 •

Who's gimmepoint

여러분들 덥죠?

이 서명은 겨울까지 갔다고 한다.....

  • 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
    그렇군요

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
43 코드 CMD로 로컬 연결 고정 IP 설정하기 1 title: 황금 서버 (30일)humit 2018.02.06 1041
42 코드 [PyQt] sir.kr에서 스크랩한 게시글을 보여주는 윈도우앱 (검색 및 정렬 가능) 7 file 이니스프리 2019.08.09 1008
41 코드 [Python] 선택한 파일을 Dropbox API를 이용하여 업로드하고 공유링크를 받아서 이미지 호스팅 용도로 URL을 변환하기 1 file 이니스프리 2019.07.02 1008
40 코드 [아미나] 네이트 실시간 검색어 순위 위젯 (아미나 캐시 적용) 3 file 이니스프리 2018.12.18 983
39 코드 잘못 쓰면 컴퓨터가 날아가는 코드 29 제르엘 2018.07.08 966
38 코드 [Python] Google Image Search 결과를 받아오기 file 이니스프리 2019.12.09 955
37 코드 유튜브에 약간의 기능을 추가 해주는 크롬 확장 프로그램. 11 file Hanam09 2018.01.26 944
36 코드 사이트 서버 이전 (또는 미러링 사이트 구축) 쉽게하는 스크립트 1 NoYeah 2018.01.14 863
35 코드 [PHP] 기상청 RSS 시간별 예보 위젯 - cache 적용(?) 9 file 이니스프리 2018.10.28 861
34 코드 [오토핫키] 브라우저를 열어 지난번과 동일한 폴더에 MZK를 다운받고 압축을 네이티브로 해제하는 스크립트 file 이니스프리 2018.10.20 846
33 코드 폰트를 자동 설치하는 코드 1 네모 2018.07.16 836
32 코드 [PHP/Javascript] 아미나에 자동으로 게시글을 생성하고 Ajax로 전송하여 결과를 표시하기 2 file 이니스프리 2019.07.09 788
31 코드 세린서버에서 시도중인 백업 스크립트 입니다. 4 NoYeah 2017.06.27 749
30 코드 엑셀파일 불러서 히스토그램 그려주는 함수 국내산라이츄 2017.08.03 725
29 코드 [JS] http를 https로 리디렉션! 3 Hanam09 2018.12.30 680
28 코드 [아미나] 출석 여부를 나타내는 메인화면 위젯 4 file 이니스프리 2018.12.15 674
27 코드 html 초보가 만든 자소서 4 title: 대한민국 국기gimmepoint 2018.04.21 670
26 코드 [PHP] 그누보드 자동 게시글 작성 - 일본기상협회의 우리나라 날씨를 크롤링한 후 파파고로 번역하여 글 작성 4 file 이니스프리 2018.11.15 662
25 코드 [Python/Telegram] Studyforus 알림봇 (댓글, 스티커 파싱) 7 file 이니스프리 2020.05.15 657
24 코드 Git 저장소에서 자동으로 받아 업데이트하는 쉘 스크립트 5 NoYeah 2017.09.16 654
Board Pagination Prev 1 2 3 4 Next
/ 4