C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[37396] (질문) _MBCS 환경에서 _mbslen 과 _mbscspn 에 관하여 ...????
원지니 [] 900 읽음    2004-09-23 23:20
_TCHAR in[100] = _T("새나라\r\n");

ret = _mbslen(in3);                                   //-------> 1.

ret = _mbscspn(in3, "\r\n");                    //------->2.


안녕하십니까?

다국어 지원 프로그래밍을 하다가

참 이상하다 싶어서 이렇게 질문을 드립니다.

현재 컴파일 환경변수는 _MBSC 로 설정 했구요

코드 페이지는 949 입니다.

위에 코드는 멀티 바이트를 고려해서 사이즈를 구하고자 하는것인데요.

1번의 ret = 5 가 나옵니다.

그런데 2번의 ret = 6 이나옵니다.

정리 하자면 _mbslen 이 함수는 멀티 바이트를 고려해서 예를 들어서 "새"를 1(size)로 보는데요

왜 _mbscspn 이라는 함수는 멀티 바이트를 지원한다고 하면서 하나의 한글 글자를 1로 보지 않고 2(size)로 보는 지 모르겠습니다. 

저의 생각으로는 두번째 리턴값은 3이 나와야 할거 같은데요..... 제가 무언가 생각이 짧은거 같습니다..... 참 어렵습니다. T.T

고수 님들의 답변 바랍니다.

+ -

관련 글 리스트
37396 (질문) _MBCS 환경에서 _mbslen 과 _mbscspn 에 관하여 ...???? 원지니 900 2004/09/23
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.