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
[35157] Re:Re:포인터 때문인 것도 같은데...
tears [seamusic] 768 읽음    2004-05-24 09:48
EmptySpear 님이 쓰신 글 :
: seamusic 님이 쓰신 글 :
: : 디비를 읽어서 포인터 이중배열에 저장하려고 하는데요
: : 그게 이상해서
: : 디버깅을 해보니까
: :
: : 이상한 값들이 들어갑니다.
: : 포인터 때문인 것도 같은데...
: : 어찌 해야할지 모르겠어요..도와주세요....ㅜ.ㅜ
: :
: : szDataList[i][0] = ADOQuery1->FieldByName(szColumnName[0])->AsString.c_str() ;
: : szDataList[i][1] = ADOQuery1->FieldByName(szColumnName[1])->AsString.c_str() ;
: : szDataList[i][2] = ADOQuery1->FieldByName(szColumnName[2])->AsString.c_str() ;
: :
: : 이렇게 쓰거든요...
: : char *szDataList[200][50] 으로 선언 되어있구요..
: :
: : 안되면.....
: : 우웅~~ ㅜ.ㅜ
: : c_str()은 문자열 포인터를 반환하잖아요..
: : 문자열 데이타를 할당해주는 방법이라도....
:
: strcpy(szDataList[i], ADOQuery1->FieldByName(szColumnName[0])->AsString.c_str());
: 또는 strncpy(szDataList[i], ADOQuery1->FieldByName(szColumnName[0])->AsString.c_str(), 50);
: 하세요  ..
: 이상한 값은 아마도 ADOQuery1->FieldByName(szColumnName[0])->AsString의 주소값(포인터)일듯

포인터 값 같은 이상한 수치가 아니라요...
음...디버깅 하면서 각 배열에 들어가는 값이....
이미 할당 된 값에... 현재 읽은 문자열이 겹쳐서 들어가기도 하고..
그래요~~
ㅜ.ㅜ
응급처치로 malloc을 사용 하였는데....
이것을 사용후에 free 도 해줬는데요~~~
(위 사용 용도가 디비 내용 엑셀에 저장하기 위한건데요...)
다시 시도 했을때 (- malloc 저장 하려 했을때)
마지막 값을 할당하려 할때 에러가 납니다~~ ㅜ.ㅜ
왜 그럴까요?

+ -

관련 글 리스트
35140 포인터 때문인 것도 같은데... seamusic 843 2004/05/21
35144     Re:포인터 때문인 것도 같은데... EmptySpear 870 2004/05/21
35157         Re:Re:포인터 때문인 것도 같은데... tears 768 2004/05/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.