정적 문자열을 할당하려는 C++ 코드에 TCHAR
배열이 있습니다. TCHAR 배열에 값을 할당하는 방법
TCHAR myVariable[260] = TEXT("initial value");
모든이에 잘 작동
통해에 초기 문자열을 설정합니다. 그러나, 나는TCHAR myVariable[260];
myVariable = TEXT("initial value");
그것은 버그에서와 같이 두 줄을 분할하고 컴파일러 오류 제공 :
이error C2440: '=': cannot convert from 'const char [14]' to 'TCHAR [260]'
가 TEXT()
기능 내가 여기 정확히 무엇을 원하는가 안가? 주어진 문자열을 TCHAR
s로 변환 하시겠습니까? 두 선을 합칠 때 왜 작동합니까? 작동 시키려면 무엇을 변경해야합니까?
I가 발생한 일부 다른 혼란 것은
는 :나는 그것을 위해 인터넷을 검색 한도 _T()
및 _TEXT()
및 __T()
및 __TEXT()
이 있음을 보았다. 그들을 위해 무엇입니까? 어떤 환경에서 사용해야합니까?
+1 to avakar. 부가 메모에서 프로젝트 설정 (유니 코드/ASCII)에 따라 WCHAR 또는 char 대신 TCHAR을 사용하십시오. TCHAR 매크로는 WCHAR/char로 정의됩니다. 마찬가지로 _tcscpy_s, _tcscat_s 등과 같은 _t 기반 보안 함수를 사용합니다.이 함수는 프로젝트에 따라 다시 정의됩니다. 설정을 wcscpy 또는 strcpy로 설정하십시오. 내 2 센트. – legends2k
이 오류가 발생했습니다 : 오류 C2664 : 'wcscpy': 'const char [8]'에서 'const wchar_t *'로 매개 변수 2를 변환 할 수 없습니다 –
@ user396483, 무엇을 시도 했습니까? str, _tcs 및 wcs 버전을 함께 사용하는 것은 분명합니다. – avakar