컴파일러
정적 타입을 가진 언어에서 컴파일러가 타입 검사를 하는 주된 이점은?
- A타입이 맞지 않는 연산이나 대입을 실행하기 전에 발견할 수 있다
- B타입 선언이 없어져 프로그램이 반드시 짧아진다
- C실행 중에 일어나는 모든 오류를 컴파일 시에 없앨 수 있다
정답과 해설 보기
정답: A. 타입이 맞지 않는 연산이나 대입을 실행하기 전에 발견할 수 있다
타입 검사에서는 정수와 문자열을 더하려 하거나 함수에 타입이 다른 인수를 전달하는 등의 오류를 프로그램을 실행하기 전에 발견할 수 있습니다. 오류를 일찍 발견할 수 있을 뿐 아니라, 타입 정보는 컴파일러가 효율적인 기계어를 고르는 데에도 도움이 됩니다. 다만 0으로 나누기나 배열 범위 밖 접근처럼 값에 따라 일어나는 오류까지 모두 없앨 수 있는 것은 아닙니다. 타입을 선언하는 만큼 프로그램이 짧아진다고도 할 수 없습니다.
- A. 올바릅니다. 타입 오류를 실행 전에 발견할 수 있습니다.
- B. 타입을 선언하는 만큼 짧아진다고는 할 수 없습니다.
- C. 값에 따라 일어나는 실행 시 오류는 없앨 수 없습니다.