XR개발/C언어
04_Q&A 0으로 초기화 시키는 이유에 대한 물음.zip
오머리쿠_OmaryKoo
2025. 1. 22. 09:52
Q1. 변수를 0으로 초기화 시키는 이유는?
1. 변수의 초기값은 정의되지 않음
C 언어에서 지역 변수(local variable)는 초기값이 자동으로 할당되지 않는다. 따라서 초기화를 하지 않은 변수를 사용하면 쓰레기 값(garbage value)이 들어 있을 수 있다. 이 값은 메모리의 기존 데이터에 따라 임의의 값이 될 수 있기 때문에, 의도하지 않은 결과를 초래할 수 있다.
초기화를 하지 않을 경우 아래와 같은 문제가 발생할 수 있다:
- 예기치 않은 결과값
- 디버깅의 어려움
- 논리 오류 발생
2. 코드의 안전성과 명확성
초기화는 코드의 안전성을 보장하고, 이후 계산이나 작업에서 변수를 신뢰할 수 있도록 만든다.

위 코드는 year가 초기화되지 않았기 때문에 잘못된 값이 year + 5로 계산될 수 있다. 따라서 변수를 사용할 때는 항상 초기값을 명시적으로 지정하는 것이 중요하다.
3. 가독성과 유지보수성 향상
초기화를 명시적으로 하면 프로그램의 가독성과 유지보수성이 향상된다. 다른 사람이 코드를 읽을 때 해당 변수가 초기값으로 무엇을 가졌는지 쉽게 알 수 있다. 예를 들어, 초기값이 0이라면 해당 변수가 합계, 누적 값, 카운터 등으로 사용될 가능성을 쉽게 파악할 수 있다.
초기화가 중요한 경우
특히 아래와 같은 상황에서는 초기화가 매우 중요하다:
- 누적 합계나 곱셈: 계산의 시작점이 되는 변수를 초기화해야 한다.
- 조건문이나 반복문: 변수 값에 따라 로직이 분기되는 경우 초기값 설정이 필요하다.
- 배열: 배열 요소를 순회하기 전에 초기값 설정이 필수적이다.
이 코드에서 초기화가 필요한 이유

- year, sale, total_sale 등은 이후에 연산에서 사용된다. 초기화하지 않으면 계산이 잘못된 값으로 시작될 수 있다.
- 초기값 0을 설정함으로써 논리적으로 연산의 시작값이 명확해지고, 예상치 못한 오류를 방지할 수 있다.
728x90