http://blog.naver.com/xingyunxing/100024009355
▶ CString -> BYTE BYTE* temp;
temp=new BYTE[255];
or
CString str = _T("abcd");
or
strcpy(szNamePlace,(LPCTSTR)name);
CString str = "string";
CString testString;
▶ CString -> BYTE * CString name = "몽룡이"; sprintf((char*)byte, "%s", name);
CString strTmp1, strTmp2; for(int i=0; i<26; i++) {
26바이트의 크기의 이름이다. 남는 공간은 0으로 채워진다
▶ CString -> int CString의 문자열을 바로 숫자로 바꾸는것은
CString str;
▶ CString => char* 변환 char * ch; 1) ch = (LPSTR)(LPCSTR)str; 2) ch = str.GetBuffer(str.GetLength());
1) str = (LPCSTR)(LPSTR)ch;
참고) LPSTR 은 char* 입니다. LPSTR : char stirng의 32비트 포인터, char* 와 같다. LPCTSTR : Constant character String의 32비트 포인터 UINT : 32비트 unsigned형 정수 BYTE : 8비트 unsigned 정수
1.CString 클래스의 GetBuffer()는 CString을 char *로 바꿔줍니다. ex) CString strTemp = _T("test"); getTemp = malloc(strTemp.GetLength()+1); free(getTemp); 2. operator LPCTSTR ()도 마찬가지입니다. ex) CString strTemp = _T("test");
CString str="1234"; BYTE *pbyte; pbyte = (BYTE(LPSTR)(LPCSTR)str;
CString str = _T("abcd"); BYTE* pbyte = new BYTE[256]; int nSize; nSize = str.GetLength(); CopyMemory( pbyte, str.GetBuffer(nSize), nSize ); pbyte[nSize] = 0;
CString => char* 변환 char * ch; 1) ch = (LPSTR)(LPCSTR)str; 2) ch = str.GetBuffer(str.GetLength()); char* => CString 변환 1) str = (LPCSTR)(LPSTR)ch;
참고) LPSTR 은 char* 입니다. LPSTR : char stirng의 32비트 포인터, char* 와 같다. LPCTSTR : Constant character String의 32비트 포인터 UINT : 32비트 unsigned형 정수 BYTE : 8비트 unsigned 정수
참고 : CString을 const char* 형태로 변경 -> (LPTSTR)(LPCTSTR)CString
LPCSTR : A 32-bit pointer to a constant character string. |