편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2020.08.27

    c 질문있어요! 쉬우시겠지만 조금 봐주세요! EXC_BAD_ACCESS


    #include <stdio.h>
    
    int main(void) {
        int aList[5] = {40, 20, 30, 40, 50};
        int nMax = aList[0];
    
        for(int i=0; aList[i] != '\n'; i++) {
            if(nMax < aList[i]) nMax = aList[i];
        }
    
        printf("MAX: %d\n", nMax);
    }
    

    안녕하세요! 이번에 c를 새로 공부하고 있는 코린이 입니다!

    배열을 공부하는데 여기 for문에서 에러가 났어요!

    (배열속 숫자중 최댓값을 구하려는 거예요!)

    Thread 1: EXC_BAD_ACCESS (code=1, address=0x7ffeefc00000) 
    

    라는데요.

    aList[i] != '\n' 이 부분을 보고 그런거같은데, 왜 이게 에러가 되는지 모르겠어요. 단순히 (i < 5) 라고 해도 되겠지만 조금더 좋게 만들려고 이렇게 하려는데, 에러난 이유가 어떤건지 알려주세요.

  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.08.27

    c 질문있어요! 쉬우시겠지만 조금 봐주세요 ㅠㅠ!


    #include <stdio.h>
    
    int main(void) {
        int aList[5] = {40, 20, 30, 40, 50};
        int nMax = aList[0];
    
        for(int i=0; aList[i] != '\n'; i++) {
            if(nMax < aList[i]) nMax = aList[i];
        }
    
        printf("MAX: %d\n", nMax);
    }
    

    안녕하세요! 이번에 c를 새로 공부하고 있는 코린이 입니다!

    배열을 공부하는데 여기 for문에서 에러가 났어요!

    (배열속 숫자중 최댓값을 구하려는 거예요!)

    Thread 1: EXC_BAD_ACCESS (code=1, address=0x7ffeefc00000) 라는데요..

    aList[i] != '\n' 이 부분을 보고 그런거같은데,, 왜 이게 에러가 되는지 모르겠어요,, 단순히 (i < 5) 라고 해도 되겠지만 조금더 좋게 만들려고 이렇게 하려는데... 에러난 이유가 어떤건지 알려주세요ㅠㅠㅠ