프로그램 소스코드를 작성하다보면, 종종 다음과 같은 오류가 발생한다.
#include <stdio.h>
int main() {
int input, i, sum = 0;
for (i = 1;i <= input;i++) {
sum += i;
}
printf("%d\n", sum);
return 0;
}
input 까지의 합계를 출력하는 코드이다.
에러가 발생한 이유는, input 변수 때문인데, 변수를 초기화를 하지 않고, for 반복문에서 사용을 해서 문제가 발생한 것이다.
미리 초기화를 해 두지 않으면, 예측 불가능한 가비지값이 들어가기에, 컴파일러에서 알아서 에러처리를 해 주는 것이다.
#include <stdio.h>
int main() {
int input = 5, i, sum = 0;
for (i = 1;i <= input;i++) {
sum += i;
}
printf("%d\n", sum);
return 0;
}
따라서 다음과 같이, 지역변수의 값을 미리 초기화 해주면, 에러가 발생하지 않는다.
'ETC > ETC' 카테고리의 다른 글
[TISTORY] 북클럽 스킨(BOOK CLUB SKIN) 사이드바 위치 우측에서 좌측으로 수정하기 (0) | 2020.12.31 |
---|---|
[C언어 에러] error C4996 Visual Studio scanf 함수 에러 (0) | 2020.12.23 |
[C언어 에러] "const char *" 형식의 값을 사용하여 "char *" 형식의 엔터티를 초기화할 수 없습니다. (0) | 2020.12.21 |
[TISTORY] 티스토리 구독 버튼 보이게 하기 + 특정 사진 누르면 구독하도록 설정하기 (0) | 2020.12.09 |
[TISTORY] 티스토리 필명 바꾸기 - 이름 두 번 나오는 현상 해결 (0) | 2020.12.08 |
댓글