2012-06-29 3 views
0

(유니 코드 환경에서) : https://stackoverflow.com/questions/11259474/store-the-numericals-in-char-array-into-an-integer-variable-in-vcTCHAR 배열의 숫자를 VC++의 INTEGER 변수에 저장합니다. 내가 스레드이 매우 많은 유사한 질문을했다

W.R.T. 위의 스레드, 내 질문은 다음과 같습니다 :: 나는 UNICODE 환경에서 일하고 있습니다. 따라서 TCHAr는 아마도 wchar로 취급 될 것입니다. 다음

내 시나리오는 : 을 (C++)

A [10] TCHAR하는 []를 '1', '2', ' 형상 요소 (번호)을 갖는 어레이 (3) '등 ....

aay [0] ='1 '; a 1 = '2'; a [2] = '3';

이제 []는 '1', '2'및 '3'의 3자를 저장합니다. 이 을 123 (정수 123)으로 int에 저장하려고합니다.

어떻게 C++에서이를 수행 할 수 있습니까?

미리 감사드립니다.

답변

1

먼저 문자열을 Null 종료해야합니다. 그렇지 않으면 어디에서 멈출 지 어떻게 알 수 있습니까? 그렇다면 기능이 구체적으로 _ttoi()입니다.

a[3] = 0; 
int n = _ttoi[a]; 

null 종료 비트를 알아야합니다. 문자 (숫자)로 a을 어떻게 채우 느냐에 따라 문자열의 끝을 결정하는 논리가 다를 수 있습니다.

+0

그래서 [3] = '\ 0'; _ttoi()를 사용할 수 있습니까? – codeLover

+0

예. '_ttoi'는 null로 끝나는 문자열을 기대합니다. 문자열을 표시하는 방식은 [3], [4] 등의 내용을 완전히 알 수 없습니다. 당신이이 문자열 (당신이 말하지 않은)을 어떻게 얻었 는가에 따라, 그것은 이미 null로 종료 될 수 있습니다. 나는 단지 확신하고 싶었다. –