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
[17134] Re:어려운 질문.....메모리 복사(memcpy)에 대해서
바람 [] 973 읽음    2002-04-02 21:16
볼것도 없네요. C, C++에서 0x00가 NULL을 나타낸다는거 다 아시죠?
즉 Loop을 돌다가 0x00를 만나면 NULL이 되어 false가 되죠.

이상 바람입니다.

김경완 님이 쓰신 글 :
: 아래의 프로그램에서 입력을 0x01, 0x02, 0x03, 0x00, 0x04, 0x05 이렇게 하고
: memcpy 하면 0x03 까지만 메모리 복사가 되고, 0x00 이후부터는 잃어버립니다.
:
: 0x00 을 포함하여 복사를 할수 있는 방법이 없을까요....?
:
: //===================================================================
: strTmp = "0x01, 0x02, 0x03, 0x00, 0x04, 0x05";
:
:        while(exist_0x)
:         {
:            iPos = NULL;
:            iPos = strstr(strTmp.c_str(), "0x");
:            if(iPos)
:            {
:               Qdata[count].IMG[i]=NULL;
:               result = iPos - strTmp.c_str() + 1;
:               image[i] = StrToInt(strTmp.SubString(result, 4));
:               //if(image[i]==0)
:               //ShowMessage(image[i]);
:               strTmp = iPos+6;
:               i=i+1;
:             }
:             else {
:                 exist_0x = FALSE;
:             }
:         }
:         memcpy((char *)Qdata[count].IMG, image, i);
:         exist_0x = TRUE;
:         image[0]=0;
: //===================================================================
:
: 부탁드립니다.
:

+ -

관련 글 리스트
17121 어려운 질문.....메모리 복사(memcpy)에 대해서 김경완 1001 2002/04/02
17134     Re:어려운 질문.....메모리 복사(memcpy)에 대해서 바람 973 2002/04/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.