2011-10-26 2 views
1

파일에 와이드 문자를 쓰려고 시도하는 동안 파일에 대한 모든 출력은 해당 문자 뒤에옵니다. 나는 무슨 일이 일어나고 있는지 모른다.와이드 문자를 입력 한 후 파일이 잘립니다.

wofstream file("c:\\test.txt"); 

file << L"seen" << L"您好" << "unseen"; 
+0

이것은 단지 예입니다. 실제 데이터는 레지스트리에서 가져옵니다. – Bluebaron

+1

동작을 나타내는 실제 코드를 보여줍니다. – tinman

+0

"보이지 않는"것이 광범위한 리터럴이 아니겠습니까? – Damon

답변

1

소스 코드의 비 ASCII 문자는 정의 된 방식으로 구문 분석됩니다. 16 진수 시퀀스 또는 최신 (c99 또는 C++ 11 이후) 유니 코드 문자 리터럴을 사용하고 UTF-8/16/32 코드 포인트 표현을 사용합니다.

이것은 구현에 따라 정의 된 동작이므로 컴파일러가 예상 한대로 컴파일하지 않는 한 절대 수행하지 마십시오.

+0

제 컴파일러와 IDE 모두 허용하고 올바르게 처리합니다. – Bluebaron

+0

이것은 단지 예입니다. 실제 데이터는 중국 직원의 워크 스테이션에있는 레지스트리에서 가져옵니다. – Bluebaron

+0

http://codepad.org/qLtE2LIb – Bluebaron

관련 문제