Visual Studio에서 유니코드 문자 집합 사용이
기본으로 되어 있는것을 볼 수 있다.
멀티바이트로도 설정이 가능하다.
멀티바이트, 유니코드는 무슨 차이이냐면
아스키코드 문자 하나는 1Byte를 표시한다.
1바이트만 쓸 수 있어 원래는 128문자만 가능하다
한글이 안된다.
그래서 총 2바이트 멀티바이트가 등장함
유니코드는 2바이트 문자열로 컴퓨터에서 사용하는
모든 문자를 포함하도록 만들어졌다.
둘다 2바이트인데 무슨 차이냐면
멀티바이트는 영어는 1바이트 한글은 2바이트로 표현한다.
유니코드는 한 문자를 2바이트로 통일한다.
그런 차이가 있다.
MessageBox로 메세지를 전달하고, 사용자에게 선택을 요할 수 있다.
MessageBoxW와 MessageBoxA의 차이는 뭘까
딱보면 알겠지만 W 유니코드, A는 멀티바이트 용 메세지 박스이다.
MessageBox는 유니코드용은 아니고, 전처리기에서
앞서 보여준 속성페이지에서 문자집합에 따라 달라진다.
F12 누르고 들어가보면
유니코드용 MessageBoxW인것을 확인 할 수 있다.
MessageBoxW(
_In_opt_ HWND hWnd,
_In_opt_ LPCWSTR lpText,
_In_opt_ LPCWSTR lpCaption,
_In_ UINT uType);
hWnd : 메시지 박스를 소유할 핸들값
IpText : 내용 문자열 형식
IpCaption : 창의 제목
uType : 출력될 아이콘, 버튼 종류 나열
ex)
int check 결과 값을 반환해와서 IDOK면 한번 더 메세지를 띄운다.
아니라면 return 0으로 윈도우 종료
'STUDY > DirectX11' 카테고리의 다른 글
DirectX11 3D - COM 객체를 위한 스마트 포인터 ComPtr (0) | 2021.12.28 |
---|---|
윈도우 메세지 종류들 List of Window Messages , 창의 이름 바꾸기(SetWindowText()) (0) | 2021.12.27 |
DirectX11 3D - 게임엔진 정적 동적 LOD(Level of Detail), 쿼드트리 (0) | 2021.12.24 |
Directx11 - 메시지 기반 Window 클래스 등록, 윈도우 생성, 창 띄우기, 메시지 루프 PeekMessageW (0) | 2021.12.24 |
DirectX11 3D - DirectX11 파이프라인, 윈도우 기반의 3D게임엔진 (0) | 2021.10.28 |