책 내용 질문하기
317, 318 병합 c언어 코드관련 질문입니다
도서
2019 시나공 정보처리기사 실기(산업기사포함)
페이지
317,318
조회수
150
작성일
2019-06-02
작성자
탈퇴*원
첨부파일
318쪽 함수부분 질문입니다. 함수에 c배열을 전부 int c [10]으로 선언해서 썼던데 c배열이 원래 20개의 배열인데 10개로 선언해도 상관 없는건가요? 35번 마지막 함수 부분에서 디버깅을 해보니 최종적으로 k가 10이 되어서 c [10] = 0; 넣는다는데 10개의 배열이면 0~9까지 주소가 있을텐데 오류나는 것 아닌가요?
답변
2019-06-03 11:02:01
안녕하세요 길벗수험서 운영팀입니다.
예, 정상적으로 수행됩니다.
함수에서 배열을 받는 다는 것은 해당 배열의 주소 시작값을 받는 다는 의미일 뿐, 배열의 최대값은 이미 선언 시 결정된 것이기 때문에 함수에서 매개변수를 받을 당시에는 자료형만 일치하면 에러는 발생하지 않습니다.
다만 함수에서 배열 C를 받는 부분은 c[20]으로 수정되야하는 것이 맞습니다.
코드의 진행에는 문제가 없더라도 해당 표기는 혼란을 일으킬 수 있는 부분이기 때문에, 지적하신대로 수정하여 올리도록 하겠습니다.
오탈로 인해 학습에 불편함을 드려 사과드립니다.
행복한 하루되세요 :)
-
관리자2019-06-03 11:02:01
안녕하세요 길벗수험서 운영팀입니다.
예, 정상적으로 수행됩니다.
함수에서 배열을 받는 다는 것은 해당 배열의 주소 시작값을 받는 다는 의미일 뿐, 배열의 최대값은 이미 선언 시 결정된 것이기 때문에 함수에서 매개변수를 받을 당시에는 자료형만 일치하면 에러는 발생하지 않습니다.
다만 함수에서 배열 C를 받는 부분은 c[20]으로 수정되야하는 것이 맞습니다.
코드의 진행에는 문제가 없더라도 해당 표기는 혼란을 일으킬 수 있는 부분이기 때문에, 지적하신대로 수정하여 올리도록 하겠습니다.
오탈로 인해 학습에 불편함을 드려 사과드립니다.
행복한 하루되세요 :)