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
[70973] Re:Re:Re:c++로 변환하는중인데 StrPCopy 함수가 말썽이네요.
주누 [junesaku] 3123 읽음    2014-02-28 11:57
간단히 생각하신게 맞는 방법일 겁니다.

오류 내용이 StrCopy란 함수명에 BYTE*형과 char*을 인자로 받는 함수가 없다는 뜻이고
(StrCopy(BYTE*, char*)함수가 없어요.. 라고 컴파일러가 뿜었습니다.)
BYTE형에 문자열이 들어가는게 맞다면
그냥 StrCopy((char *) dest, src) 하시면 될겁니다.

jinhyun 님이 쓰신 글 :
: 답변 감사드립니다.
:
: 헌데 확인하고 컴파일을 하였더니
:
: 마찬가지로
:
:
: [bcc32 Error] NET.cpp(295): E2285 Could not find a match for 'StrCopy(unsigned char *,char *)'
: 

:
: 이런 에러를 뿜네요 ㅎㅎ
:
: 단순히 생각했을때 첫번째에 들어가는 인자값이 byte 형이라서 그런걸까 싶기도하네요 ㅠ
:
:
: 정성훈.해미 님이 쓰신 글 :
: : 안녕하세요.
: : 정성훈.해미입니다.
: :
: :
: : StrCopy(pPacketInfo->Addr,  AnsiString(gSystem.HostIP).c_str());
: : 

: :
: : 이렇게 사용해 보세요.
: :
: : C++에서는 문자열 복사 함수가 StrCopy입니다.
: :
: : 형식
: : StrCopy(char* dst, char* src)
: :
: : 첫번째 인자 dst부분에는 char포인터인 pPacketInfo->Addr를 사용하시면 되겠고
: : 두번째 인자 src부분은 AnsiString을 char*로 변환해주는 내장함수 c_str()을 사용하여
: : AnsiString(gSystem.HostIP).c_str() 이렇게 사용하시면 되겠습니다.
: :
: : 만약 gSystem.HostIP이 char*이다면 굳이 AnsiString으로 변환 할 필요없이
: :
: :
: : StrCopy(pPacketInfo->Addr,  gSystem.HostIP);
: : 

: :  이렇게 사용하시면 되겠고
: :
: :  gSystem.HostIP이 UnicodeString이라면
: : 내장함수 t_str()을 사용하여 다움과 같이 사용하면 되겠습니다
: :
: :
: : StrCopy(pPacketInfo->Addr,  gSystem.HostIP.t_str());
: : 

: :
: :
: : jinhyun 님이 쓰신 글 :
: : : c++로 변환하는중인데 StrPCopy 함수가 말썽이네요.
: : :
: : :
: : : StrPCopy(@pPacketInfo^.Addr[0], AnsiString(gSystem.HostIP));
: : : 

: : :
: : : 델파이에서는 위와같은 형식으로 썼습니다.
: : :
: : : pPacketInfo^.Addr[0] 요너석은
: : :
: : :
: : : Addr: array [0..IP_ADDR_LENGTH - 1] of Byte; 
: : : 

: : :
: : : 포인터구조체에 이런식으로 선언되어있구요.
: : :
: : : 이녀석을 이전버전에서는
: : :
: : :
: : : StrPCopy(&pPacketInfo->Addr[0],  AnsiString(gSystem.HostIP));
: : : 

: : :
: : : 요런식으로 잘써먹었는데말이죠
: : :
: : : 지금 XE5버전에서는 이런식으로는 에러가 뜨네요.
: : :
: : :
: : : [bcc32 Error] NET.cpp(196): E2285 Could not find a match for 'StrPCopy(unsigned char *,AnsiString)'
: : : 

: : :
: : : 이런에러와함께요;;..
: : :
: : : 타입에 문제가 있는것 같아서,
: : :
: : : 이리저리 변환해보았지만 전부 에러가뜨네요..
: : :
: : : 이거 방법아실분 혹시 계실까요??

+ -

관련 글 리스트
70963 c++로 변환하는중인데 StrPCopy 함수가 말썽이네요. jinhyun 2969 2014/02/27
70968     Re:c++로 변환하는중인데 StrPCopy 함수가 말썽이네요. 정성훈.해미 2911 2014/02/28
70972         Re:Re:c++로 변환하는중인데 StrPCopy 함수가 말썽이네요. jinhyun 2894 2014/02/28
70973             Re:Re:Re:c++로 변환하는중인데 StrPCopy 함수가 말썽이네요. 주누 3123 2014/02/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.