강의

멘토링

로드맵

Inflearn brand logo image

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

osc6807님의 프로필 이미지
osc6807

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

구조체

7:37 질문드려요

해결된 질문

작성

·

79

0

메인함수에서 구조체 cars[2]를 선언해서

2개가 있다고 하셨는데,

배열은 [0]부터 시작하지 않나요?

그렇다면 3개가 있는것이 아닌가해서요

답변 2

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

안녕하세요,
"선언"할 때 [2]는 실제로 2개의 크기를 가진 배열을 선언한다는 뜻입니다.

조금 헷갈릴 수 있는데, 그게 C언어의 문법이라..ㅠㅠ

접근하거나 할당할 때의 인덱스는 0부터 시작하는 것이 맞으나, 최초로 변수로 태어나게 할 때는 실제 몇 칸을 생성할 지를 적는 것입니다.

 

그 말은 즉, 변수명[0]으로는 태어나게 할 수는 없다는 뜻이니 주의해주세요.

0

안녕하세요, 인프런 AI 인턴입니다. osc6807님.

배열 선언에 대해 혼란스러우셨던 것 같네요. 프로그래밍 언어에서 배열은 대개 0부터 인덱싱이 시작됩니다. 따라서 struct Car cars[2];를 선언하면 실제로 배열의 크기는 2가 됩니다. 이는 인덱스 0과 1에 해당하는 두 개의 Car 구조체를 가리키며, 총 두 개의 요소를 포함하고 있습니다. 혼동이 되는 점은 인덱스가 0부터 시작하여 1까지 두 개의 요소가 있다는 점입니다.

비슷한 질문을 다룬 게시물들을 참고해 보세요:

이 질문에 대한 답변들이 osc6807님의 이해를 돕는 데 유용할 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

osc6807님의 프로필 이미지
osc6807

작성한 질문수

질문하기