• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

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

21.04.20 05:42 작성 조회수 100

0

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

답변 1

답변을 작성해보세요.

1

경우에 따라 다릅니다.

예를 들어서 

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

v = 123;

// 이후에 v 사용

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

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

v = v + 100;

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

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