본문 바로 가기

로고

학습 Q&A

강의 내용 궁금증! 교수님이 직접 답변 드립니다.

  • 홈
  • 교수소개
  • 공학계열
  • 장윤경 교수님
  • 학습 Q&A

Q&A 메뉴.png

※ 유의사항
강의에 나오지 않는 내용에 대한 풀이나 해설은 답변을 드릴 수가 없습니다.
학습과 무관한 내용 및 비방/욕설 등 게시판 성격과 무관한 내용은 사전 고지없이 삭제됩니다.
답변 완료된 게시글은 수정 및 삭제 불가합니다.

jokjjs0216_03.png

게시판 글보기
제목 답변완료 c언어 중 31강에 대한 질문
질문유형 강좌내용 교수님 장윤경
과목 프로그래밍 강좌명
작성자 김*현 (k*********y) 등록일 2023-08-17 21:15

1.strcpy함수를 구현하는 문제 중 함수를 선언하실 때 char * my_strcpy(char* pd, char* *pd)

라고 선언을 하셨는데 저 매개변수 중 char* *pd는 뭔가요? 왜*표시가 두개나 들어가나요?

 

2. 함수를 선언할 때, char * my_strcpy(char* pd, char* *pd) 로 선언하셨잖아요, 근데 함수를 포인터형으로한 이유는 뭔가요? 리턴을 배열로 리턴하기 때문에 함수를 포인터로 선언하신건가요?

 

3.그리고 함수를 포인터로 한건 대체 뭐가 다른가요? void형이아닌 char형은 main()함수에서 누군가가 받아줘야하는거 아닌가요? 예를들면 

int main()

char a = my_strcpy (....); 이런식으로요! 근데 교수님의 수업을 들으니 char함수의 반환값을 아무도 안받아주더라고요 ㅠㅠ 포인터형함수와 그냥함수의 차이는 뭔가요?

 

답변 완료된 질문과 답변은 수정 및 삭제가 불가합니다.

댓글
0
장*경 교수님

1.strcpy함수를 구현하는 문제 중 함수를 선언하실 때 char * my_strcpy(char* pd, char* *pd)

라고 선언을 하셨는데 저 매개변수 중 char* *pd는 뭔가요? 왜*표시가 두개나 들어가나요?

-> 이중포인터입니다. 이중포인터에 대한 설명은 수업중에 하였으니 참고 부탁드립니다. 

 

 

2. 함수를 선언할 때, char * my_strcpy(char* pd, char* *pd) 로 선언하셨잖아요, 근데 함수를 포인터형으로한 이유는 뭔가요? 리턴을 배열로 리턴하기 때문에 함수를 포인터로 선언하신건가요?

-> 주소를 return 형으로 받기위해 포인터형입니다.

 

3.그리고 함수를 포인터로 한건 대체 뭐가 다른가요? void형이아닌 char형은 main()함수에서 누군가가 받아줘야하는거 아닌가요? 예를들면 

int main()

char a = my_strcpy (....); 이런식으로요! 근데 교수님의 수업을 들으니 char함수의 반환값을 아무도 안받아주더라고요 ㅠㅠ 포인터형함수와 그냥함수의 차이는 뭔가요? 

-> return된 것을 받아주느냐 받아주지 않느냐는 main에서 함수를 어떻게 사용하느냐에 대한 선택입니다.

  • 2024-02-16
  • 2024-12-12 수정