인프런 커뮤니티 질문&답변

wotgood9999님의 프로필 이미지
wotgood9999

작성한 질문수

홍정모의 따라하며 배우는 C언어

5.7 나머지 연산자

안녕하세요 int second = 0과 같이 초기화는 반드시 해야하는건가요?

작성

·

143

0

안녕하세요 int second = 0과 같이 초기화는 반드시 해야하는건가요?

답변 1

1

홍정모님의 프로필 이미지
홍정모
지식공유자

경우에 따라 다릅니다.

예를 들어서 

int v; // 초기화 하지 않음

v = 123;

// 이후에 v 사용

이런 경우에는 초기화를 하지 않아도 문제가 생기지 않습니다. 그러나 아래와 같은 경우에는 문제가 생깁니다.

int v; // 초기화 하지 않음

v = v + 100;

// v의 값이 100일 수도 아닐 수도 있어서 위험

최근에 나오는 프로그래밍 언어에서는 프로그래머들의 실수를 방지하는 것이 더 중요하기 때문에 언어 차원에서 내부적으로 무조건 초기화를 해주는 방향으로 발전해나가고 있습니다. C언어에서는 초기화하는 것 조차 프로그래머에게 선택권을 주기 위해서 언어 차원에서 초기화를 해주지 않는 것입니다. 최근에는 C언어나 C++언어에서도 초기화되지 않은 변수를 사용할 경우에 개발환경이나 컴파일러가 경고나 오류를 발생시켜서 프로그래머의 실수를 방지해 주기도 합니다.

wotgood9999님의 프로필 이미지
wotgood9999

작성한 질문수

질문하기