_strdec, _wcsdec, _mbsdec, _mbsdec_l
문자열 포인터 한 문자 뒤로 이동합니다.
중요 |
---|
mbsdec및 mbsdec_l 를 실행 하는 응용 프로그램에서 사용할 수 없습니다는 Windows 런타임.자세한 내용은 /zw에 지원 되는 CRT 함수. |
unsigned char *_strdec(
const unsigned char *start,
const unsigned char *current
);
unsigned wchar_t *_wcsdec(
const unsigned wchar_t *start,
const unsigned wchar_t *current
);
unsigned char *_mbsdec(
const unsigned char *start,
const unsigned char *current
);
unsigned char *_mbsdec_l(
const unsigned char *start,
const unsigned char *current,
_locale_t locale
);
매개 변수
start
모든 문자에 대 한 포인터 (또는 _mbsdec 및 _mbsdec_l, 첫 번째 바이트는 멀티 바이트 문자의) 원본 문자열입니다. start앞에 야 current 원본 문자열에서입니다.current
모든 문자에 대 한 포인터 (또는 _mbsdec 및 _mbsdec_l, 첫 번째 바이트는 멀티 바이트 문자의) 원본 문자열입니다. current따라야 start 원본 문자열에서입니다.locale
사용 하는 로캘.
반환 값
_mbsdec_mbsdec_l, _strdec, 및 _wcsdec 각각 반환 포인터 바로 앞에 문자를 current. _mbsdec반환 NULL 경우 값을 start 보다 크거나 같은 수의 current._tcsdec이러한 함수 및 해당 반환 값 중 하나로 매핑됩니다 매핑에 따라 달라 집니다.
설명
_mbsdec 및 _mbsdec_l 함수 바로 앞에 있는 멀티 바이트 문자의 첫 번째 바이트에 대 한 포인터를 반환할 current 포함 하는 문자열에 start.
출력 값의 설정에 의해 영향을 받지는 LC_CTYPE 범주 설정 로케일입니다. 볼 setlocale을 _wsetlocale 에 대 한 자세한 내용은._mbsdec현재 사용 중인 로케일에 따라 멀티 바이트 문자 시퀀스를 인식 하는 동안 _mbsdec_l 대신 전달 된 로캘 매개 변수를 사용 하는 것을 제외 하 고 동일 합니다.자세한 내용은 로캘을 참조하십시오.
경우 start 또는 current 는 NULL에 설명 된 대로 잘못 된 매개 변수 처리기를 호출 매개 변수 유효성 검사.실행을 계속 하도록 허용 된 경우,이 함수는 반환 EINVAL 을 설정 하 고 errno 에 EINVAL.
보안 정보 |
---|
이러한 함수는 버퍼 오버런 위협에 노출 될 수 있습니다.불필요 한 권한 상승 수 있으므로 시스템 공격에 대 한 버퍼 오버런을 사용할 수 있습니다.자세한 내용은 버퍼 오버런 방지. |
일반 텍스트 루틴 매핑
Tchar.h 루틴 |
_UNICODE 및 _mbcs가 정의 되어 있지 않습니다 |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tcsdec |
_strdec |
_mbsdec |
_wcsdec |
_strdec및 _wcsdec 싱글바이트 문자 및 와이드 문자 버전의 _mbsdec 및 _mbsdec_l._strdec및 _wcsdec 만이 대 한이 매핑을 제공 되며 그렇지 않으면 사용할 수 없습니다.
자세한 내용은 일반 텍스트 매핑을 사용합니다. 및 제네릭 텍스트 매핑을 참조하십시오.
요구 사항
루틴 |
필수 헤더 |
선택적 헤더 |
---|---|---|
_mbsdec |
<mbstring.h> |
<mbctype.h> |
_mbsdec_l |
<mbstring.h> |
<mbctype.h> |
_strdec |
<tchar.h> |
|
_wcsdec |
<tchar.h> |
|
자세한 호환성에 대 한 내용은 호환성.
예제
다음 예제에서는 _tcsdec.
#include <iostream>
#include <tchar.h>
using namespace std;
int main()
{
const TCHAR *str = _T("12345");
cout << "str: " << str << endl;
const TCHAR *str2;
str2 = str + 2;
cout << "str2: " << str2 << endl;
TCHAR *answer;
answer = _tcsdec( str, str2 );
cout << "answer: " << answer << endl;
return (0);
}
다음 예제에서는 _mbsdec.
#include <iostream>
#include <mbstring.h>
using namespace std;
int main()
{
char *str = "12345";
cout << "str: " << str << endl;
char *str2;
str2 = str + 2;
cout << "str2: " << str2 << endl;
unsigned char *answer;
answer = _mbsdec( reinterpret_cast<unsigned char *>( str ), reinterpret_cast<unsigned char *>( str2 ));
cout << "answer: " << answer << endl;
return (0);
}
해당 .NET Framework 항목
해당 사항 없음. 표준 C 함수를 호출 하려면 PInvoke. 자세한 내용은 플랫폼 호출 예제을 참조하십시오.
참고 항목
참조
_strinc, _wcsinc, _mbsinc, _mbsinc_l