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

C++빌더 Q&A
C++Builder Programming Q&A
[46666] Re:배열을 넘기는 함수 C 기초가 약해서... --;
고황일 [hwangil] 927 읽음    2006-09-27 19:43
저의 무식한 방법입니다.
배열을 인수로 받아서 사용하는 방법입니다.

void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
int y[8] = {0};

        ReturnArray(y);

        ShowMessage(y[2]);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ReturnArray(int *Arr)
{
        Arr[0] = 10;
        Arr[1] = 110;
        Arr[2] = 120;
        Arr[3] = 130;
        Arr[4] = 140;
        Arr[5] = 150;
        Arr[6] = 160;
}
//---------------------------------------------------------------------------
그럼.

이경준 님이 쓰신 글 :
: 안녕하세요. 학원에서 대충 C를배우고 프로그램을 하는터라 기본이좀 약합니다. ㅠ.ㅠ
: 어떠한 함수에서 TRECT의 배열을 리턴값으로 넘겨주고 싶습니다.
: TRect[] TCiObject::getTracker()
: {
: }
: 요렇게 했더니 에러가 나네요.
: 그래서 기억을 되살려보니 배열은 포인터다! 라고 얼핏들은거같아 이렇게작성했습니다.
:
: TRect* TCiObject::getTracker()
: {
:     TRect trackerRect[8];
:     trackerRect[0]=TRect(0,0,10,10);
:     trackerRect[1]=TRect(45, 10, 55, 20);
:     .
:     .
:     .
:     return trackerRect;
: }
:
: 뭐 대충 이렇게 짰습니다.
: 문제는 배열을 저 리턴된 주소값으로 어떻게 배열로 다시 만드냐 하는건데요...
: 저 주소값을 다시 받는 함수가 있습니다.
:
: void TMainForm::DrawTracker(TRect* pTrackerRect)
: {
:     TRect tempRect;
:     tempRect = *pTrackerRect;
:     MainBoard->Canvas->Rectangle(tempRect);   //첫번째 트래커박스
:     tempRect = *(pTrackerRect++);
:     MainBoard->Canvas->Rectangle(tempRect);  // 두번째 트래커박스
: }
:
: 이렇게 하면 첫번째꺼는 받아 지는데 두번째 껀 안받아져요. ㅠ.ㅠ
: watch 해보니까 첫번째는 잘들어갔는데 두번째에는 엉뚱한값이 있는걸보아
: *(pTrackerRect++) 에서 잘못한듯합니다.
: 배열 두번째것을 가져와야 하는데 말이죠..
: 조언 부탁드립니다.

+ -

관련 글 리스트
46654 배열을 넘기는 함수 C 기초가 약해서... --; 이경준 908 2006/09/27
46666     Re:배열을 넘기는 함수 C 기초가 약해서... --; 고황일 927 2006/09/27
46655     Re:배열을 넘기는 함수 C 기초가 약해서... --; 이재율.미루 982 2006/09/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.