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
[55628] [빌더2007->2009 질문] AnsiString::c_str()은 어떻게 바꿔야 하나요?
설인환 [] 2093 읽음    2008-12-31 10:39
10년째 볼랜드포럼에서 많이 배우고 있는 사람입니다.
빌더 2009를 입수하게 되어서 2007에서 사용하던 프로젝트를 한번 컴파일 해보았는데요.
저는 그동안 AnsiString을 기본으로 쓰고,  strcpy() 등과 같이 char*가 필요할 경우 c_str()을
이용해 변환해서 사용했었습니다.

그런데 2009에서는 c_str()을 부르면 char*가 되는 것이 아니고 wchar_t*가 반환되는 거 같군요.
(Unicode가 기준이라서 그런가요)

코드기어 홈페이지에도 보니까 저 같은 사람이 있어서 글을 남겼는데
( https://forums.codegear.com/thread.jspa?messageID=59999&tstart=0 )
대충 읽어보니까,
teamB쪽에서는 코드 바꾸는 거 어렵지 않으니까 조금만 수정하면 된다고 주장하고 있고,
글을 올린 유저쪽에서는 소스가 수십만 줄인데 어떻게 다 고치냐~ 이런 내용인듯합니다.

간단히 말해서

AnsiString str = "test";
char buffer[256];
strcpy( buffer, str.c_str() );

와 같은 소스를 최대한 코드 수정없이 사용하려면 2009에서는 어떻게 해야 정답일까요?
고수님들의 명확한 정리를 기다리겠습니다.

+ -

관련 글 리스트
55628 [빌더2007->2009 질문] AnsiString::c_str()은 어떻게 바꿔야 하나요? 설인환 2093 2008/12/31
55630     보충:[빌더2007->2009 질문] AnsiString::c_str()은 어떻게 바꿔야 하나요? 설인환 1795 2008/12/31
55631         Re:보충:[빌더2007->2009 질문] AnsiString::c_str()은 어떻게 바꿔야 하나요? 박지훈.임프 2670 2008/12/31
55632             Re:Re:보충:[빌더2007->2009 질문] AnsiString::c_str()은 어떻게 바꿔야 하나요? 설인환 1725 2008/12/31
55633                 Re:Re:Re:보충:[빌더2007->2009 질문] AnsiString::c_str()은 어떻게 바꿔야 하나요? 박지훈.임프 2412 2008/12/31
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.