C/C++에서 함수의 반환값이 포인터가 될 수 도 있다. 이 경우 함수의 선언은 다음과 같다.
반환자료형 *함수명(입력데이터형1, 입력데이터형2, …); |
함수 내부에서 return 명령어에 의해 반환되는 변수도 당연히 반환자료형의 포인터가 되어야 한다. 이것은 문자열을 반환하거나 배열을 반환해야 하는 함수를 작성할 때 사용된다.
예를 들어서 getMsg()라는 함수의 반환형이 문자열일 경우 다음과 같이 선언한다.
char *getMsg(); |
자료형 (char*)은 문자배열 즉 문자열을 표현하는 것이다. 이것을 이용하여 예제를 들어보면 다음과 같다.
#include <stdio.h>char *getMsg(); // 함수 선언int main(){printf("%s", getMsg());}char *getMsg() // 함수 정의{char *str = "getMsg() called.\n";return str;} |
getMsg() called. |
이 예제에서 getMsg() 함수는 내부에서 문자열 포인터 str을 생성한 후 그것을 반환한다. main()함수에서는 그것을 받아서 그대로 printf()함수의 입력 인자로 주는 간단한 예제이다.
C++ 강좌 전체 목록 >>>
'프로그래밍언어.Lib > C,C++' 카테고리의 다른 글
C/C++ 의 if ~ else 조건 제어문 (0) | 2015.05.18 |
---|---|
C/C++ 포인터 사용시 주의할 점 (0) | 2015.05.18 |
C/C++ 에서 포인터를 함수의 인자로 넘기기 (0) | 2015.05.18 |
6.3 포인터 연산 (덧셈, 뺄셈) (0) | 2015.05.18 |
6.2 포인터 선언과 초기화 (0) | 2015.05.18 |