책 내용 질문하기
183쪽 문제 3번
도서
2024 시나공 정보처리기사 실기 기본서
페이지
183
조회수
208
작성일
2024-08-02
작성자
김*현
첨부파일
char* getname() {
printf("이름 입력 : ");
gets(n);
return n;
}
문제에서 자료형 포인터 함수로 되어있는데
char getname() {
...
}
이렇게 자료형 함수로 바꾸면 안되는건가요?
함수 내부에서 n배열의 주소를 받아서 자료형 포인터 함수를 쓰는건가요?
답변
2024-08-03 14:13:08
안녕하세요 길벗수험서 운영팀입니다.
문제의 해설이도 써있듯 getname( ) 함수는 문자형 포인터 값을 반환하는 함수이기 때문에
회원님께서 말씀하신것처럼 변경하시면 안됩니다
값을 반환하는 코드를 보시면 return n; 이라고 되어있는데
n이라는것은 배열의 이름입니다.
이렇게 배열의 이름만 쓰게 되면 n의 시작 주소를 함수를 호출했던 곳으로 반환해주는 것입니다.
행복한 하루되세요 :)
-
관리자2024-08-03 14:13:08
안녕하세요 길벗수험서 운영팀입니다.
문제의 해설이도 써있듯 getname( ) 함수는 문자형 포인터 값을 반환하는 함수이기 때문에
회원님께서 말씀하신것처럼 변경하시면 안됩니다
값을 반환하는 코드를 보시면 return n; 이라고 되어있는데
n이라는것은 배열의 이름입니다.
이렇게 배열의 이름만 쓰게 되면 n의 시작 주소를 함수를 호출했던 곳으로 반환해주는 것입니다.
행복한 하루되세요 :)