CString -> char *
1. 형 변환 하여 포인터 값을 참조할 경우
CString strTemp;
strTemp = "Hello";
char *pszStr = (LPSTR)(LPCTSTR) strTemp;
2. CString 객체 내부에 char 형식으로 수정/편집할 경우
CString strTemp;
strTemp = "Hello";
char *pszStr = (LPSTR)strTemp.GetBuffer(0);
// pszStr 사용 //
strTemp.ReleaseBuffer();
※ GetBuffer()로 CString 포인터를 이용할 경우
CString 객체가 살아 있을 경우에만 포인터를 사용할 수 있다.
GetBuffer(버퍼크기) 버퍼 크기를 설정해주면 원하는 크기의 버퍼를 받는다.
(0 = 문자열이 있는 길이 만큼의 버퍼)
※ CString 맴버 함수를 사용할 경우에 반드시 ReleaseBuffer() 호출 후에 사용해야 한다.
---------------------------------------------------------
char * --> CString
1. 문자열 변환시(Format 이용)
char szStr[] = "Hello";
CString str;
str.Format("%s", szStr);
2. CString 생성자 이용
CString str( (LPCTSTR) szStr );
3. GetBuffer 이용
char szStr[] = "Hello";
CString str;
strcpy( str.GetBuffer(100), szStr );
str.ReleaseBuffer();
----------------------------------------------------------
문자열 복사
1. CString -> char*
CString strData = "하하하";
int len = strData.GetLength();
char* sz = new char[len];
strcpy(sz, strData.GetBuffer(0));
strData.ReleaseBuffer();
2. _tcscpy_s를 이용한 복사
CString str( "This is a Test" );
int nStrLength = str.GetLength() + 1;
LPTSTR lpsz = new TCHAR[ nStrLength ];
_tcscpy_s( lpsz, nStrLength, str );
strcpy_s ANSI 스타일
_tcscpy_s ANSI, UNICODE 둘다 지원( TCHAR와 비슷 )
1. 형 변환 하여 포인터 값을 참조할 경우
CString strTemp;
strTemp = "Hello";
char *pszStr = (LPSTR)(LPCTSTR) strTemp;
2. CString 객체 내부에 char 형식으로 수정/편집할 경우
CString strTemp;
strTemp = "Hello";
char *pszStr = (LPSTR)strTemp.GetBuffer(0);
// pszStr 사용 //
strTemp.ReleaseBuffer();
※ GetBuffer()로 CString 포인터를 이용할 경우
CString 객체가 살아 있을 경우에만 포인터를 사용할 수 있다.
GetBuffer(버퍼크기) 버퍼 크기를 설정해주면 원하는 크기의 버퍼를 받는다.
(0 = 문자열이 있는 길이 만큼의 버퍼)
※ CString 맴버 함수를 사용할 경우에 반드시 ReleaseBuffer() 호출 후에 사용해야 한다.
---------------------------------------------------------
char * --> CString
1. 문자열 변환시(Format 이용)
char szStr[] = "Hello";
CString str;
str.Format("%s", szStr);
2. CString 생성자 이용
CString str( (LPCTSTR) szStr );
3. GetBuffer 이용
char szStr[] = "Hello";
CString str;
strcpy( str.GetBuffer(100), szStr );
str.ReleaseBuffer();
----------------------------------------------------------
문자열 복사
1. CString -> char*
CString strData = "하하하";
int len = strData.GetLength();
char* sz = new char[len];
strcpy(sz, strData.GetBuffer(0));
strData.ReleaseBuffer();
2. _tcscpy_s를 이용한 복사
CString str( "This is a Test" );
int nStrLength = str.GetLength() + 1;
LPTSTR lpsz = new TCHAR[ nStrLength ];
_tcscpy_s( lpsz, nStrLength, str );
strcpy_s ANSI 스타일
_tcscpy_s ANSI, UNICODE 둘다 지원( TCHAR와 비슷 )
덧글을 달아 주세요