인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

kh2mail님의 프로필 이미지
kh2mail

작성한 질문수

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

10.17 변수로 길이를 정할 수 있는 배열

상수를 통한 배열 크기 선언과 가변길이 선언의 다른 점이 무엇인가요?

작성

·

161

3

안녕하세요!

강의를 듣던 중 궁금한 것이 생겨 두 가지 질문을 남깁니다.

1. 이전 강의에서 상수(매크로)를 이용한 배열 크기 선언에 대해 학습하였습니다. 초보자 입장에서는 가변 길이 방식의 선언과 상수를 이용한 방식이 유사해보입니다.

그런데 가변 길이 방식을 지원하지 않는다는 것은 상수를 이용한 방식과 차이점이 있다고 생각하여 차이점이 무엇인지 궁금합니다!

2. 인터넷 검색을 해보니 강의에서 말씀 해주신 것처럼  Visual Studio의 컴파일러 말고 다른 컴파일러에서는 해당 기능을 지원한다고 들었습니다. 혹시 Visual Studio의 컴파일러에서 해당 기능을 지원하지 않는 이유가 무엇인지 알 수 있을까요?

감사합니다!

답변 1

2

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

"컴파일할 때 배열의 크기를 알 수 있느냐 없느냐" 즉, 컴파일러의 관점에서 생각해보세요.

다만, C언어는 문법을 매우 보수적으로 관리하고 있어서 요즘 새로 공부를 시작한 프로그래머들 입장에서는 당연한 것들도 절대 안된다고 막아버리는 경우가 많습니다. 알고보면 과거의 이런저런 이유때문에 문법을 바꿀경우 기존의 코드들에 큰 문제가 생기기 때문입니다.

kh2mail님의 프로필 이미지
kh2mail

작성한 질문수

질문하기