책 내용 질문하기
P260 문제 15번
도서
2022 시나공 정보처리기능사 실기
페이지
260
조회수
89
작성일
2022-10-31
작성자
탈퇴*원
첨부파일

15번에서 메소드prnt()에 void가 있는데 메인함수에서의 myvar.a myvar.b의 값이 메소드prnt()에서 변한 값으로 왜 반환되는지 모르겠습니다

답변
2022-11-01 13:44:41

안녕하세요 길벗수험서 운영팀입니다.

 

배열명 또는 객체 변수의 이름을 함수의 인수로 보내는 경우, 해당 배열이나 객체 변수에 저장된 값이 전달되는 것이 아닌,

메모리의 위치, 즉 주소가 전달됩니다.

 

때문에 함수에서 값이 변경되는 경우 메모리의 위치에 있는 값이 직접 수정되면서 main() 함수까지 영향을 주게 되는 것이죠.

 

행복한 하루되세요 :)

  • 관리자
    2022-11-01 13:44:41

    안녕하세요 길벗수험서 운영팀입니다.

     

    배열명 또는 객체 변수의 이름을 함수의 인수로 보내는 경우, 해당 배열이나 객체 변수에 저장된 값이 전달되는 것이 아닌,

    메모리의 위치, 즉 주소가 전달됩니다.

     

    때문에 함수에서 값이 변경되는 경우 메모리의 위치에 있는 값이 직접 수정되면서 main() 함수까지 영향을 주게 되는 것이죠.

     

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.