Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[6021] Re:[질문]c언어 문법 문의합니다.
남병철.레조 [lezo] 2533 읽음    2007-06-18 21:46
포인터로 리턴하면 포인터만 복사되어 전달됩니다.
상대적으로 적은 부하가 걸립니다. 참조로 리턴하면 전혀 복사없이 바로 리턴됩니다.
만일 그냥 리턴하면 구조체 전체가 복사되어 전달되므로 빈번히 사용하면 상대적으로 부하가 많은 코드가 됩니다.



이윤관 님이 쓰신 글 :
: typedef struct {
:     int   a;
:     int   b;
: } COMM_T;
:
: COMM_T  test_function(void)
: {
:     COMM_T   comm;
:
:     comm.a = 100;
:     comm.b = 200;
:     return comm;
: }
:
: void printf_function(void)
: {
:     COMM_T    comm;
:
:     comm = test_function();
:     printf("a=%d \n", comm.a);
:     printf("b=%d \n", comm.b);
: }
:
: 위함수에서 COMM_T를 포인터로 하지 않고 return 해도 문법적으로 문제가 되지 않나요?
: 전 항상 포인터로 해서 return했는데 다른분이 만든 코드를 보니까 위에서 처럼사용하고 있네요.
: 문제가 없는 코드인가요?
: COMM_T *comm으로 한후 return comm한것과 어떤 차이점이 있는건가요?

+ -

관련 글 리스트
6020 [질문]c언어 문법 문의합니다. 이윤관 2665 2007/06/18
6022     Re:[질문]c언어 문법 문의합니다. 라스코니 2482 2007/06/21
6021     Re:[질문]c언어 문법 문의합니다. 남병철.레조 2533 2007/06/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.