질문자 : 조조 | 링크 : http://cafe.naver.com/winmodev/2667 |
<질문내용> char*, uchar* 문자열 출력시 깨짐 현상이 발생하네요.
확인이나 제대로 출력하려면 어떻게 해야하나요?
전체적인 동작은 소켓 통신후 전송된 문자열 출력시 문제가 발생하네요.
파일출력은 제대로 동작하는데.. 윈도우 화면 출력에서는 깨지네요.
멀티바이트, 유니코드로 변환해서도 해보고 명시적 형변환으로도 해봤는데....
버퍼깨짐을 확인할수 있는 방법을 알고 싶습니다. | |
<답변내용> 우선적으로 수신될 때 유니코드로 수신되는지 확인해보세요 WM은 UTF-16를 기본으로 사용하고 있기 때문에 이를 위해 wchar를 사용합니다
그리고 가끔 드믈게 발생하기도 하지만 CPU 때문에 UTF-16을 전송할 때 Big Endian으로 전송되는 경우가 있다고 합니다 (인텔 계열은 little endian사용)
일단 영문으로 데이터를 수신해 보고 수신된 유니코드가 동일한지 확인해보시는 것이 좋을 것 같네요 :) | |
작성일 : 2010.05.31 12:41 |
Mobile Develop/WinMoDev Q&A