프로그래밍/MFC , WinAPI

wcstombs_s 함수란 무엇인가?

친루엄 2018. 4. 13. 17:28
errno_t wcstombs_s(  
   size_t *pReturnValue,  
   char *mbstr,  
   size_t sizeInBytes,  
   const wchar_t *wcstr,  
   size_t count   
);  

해당 함수는 와이드 문자열(유니코드)을 싱글바이트 문자열(아스키코드)로 바꿔줍니다

MFC에서 CString -> char *  로 변환 할때 유용합니다.

 

pReturnValue
변환된 문자 수를 반환합니다.

mbstr
결과 반환되는 멀티바이트 문자열에 대한 버퍼 주소입니다.

sizeInBytes

 변환할 문자열의 크기입니다.
mbstr 

버퍼의 크기(바이트)입니다.

wcstr
변환할 와이드 문자열을 가리킵니다.

count
멀티바이트 문자열에 저장될 버퍼의 최대 크기 상수 _TRUNCATE를 넣어주면 최대크기로 설정된다.

 ex)

CString strTemp = _T("Test"); 

size_t size = 0;
char* pChar; 
wcstombs_s(&size, pChar, strIP.GetLength() + 1, strIP, _TRUNCATE);