문자열을 숫자 값의 함수
설명
각 함수에는 strtod 제품군 null로 끝나는 문자열을 숫자 값으로 변환 합니다.사용 가능한 함수는 다음 표에 나와 있습니다.
Function |
설명 |
---|---|
strtod |
배정밀도 부동 소수점 값으로 문자열을 변환 합니다. |
strtol |
문자열을 정수 (long)로 변환 |
strtoul |
부호 없는 long 정수를 문자열 변환 |
_strtoi64 |
64 비트 문자열 변환 __int64 정수 |
_strtoui64 |
부호 없는 64 비트 변환 문자열을 __int64 정수 |
wcstod, wcstol, wcstoul, and _wcstoi64 are wide-character versions of strtod, strtol, strtoul, and _strtoi64, respectively.각 와이드 문자 함수는 문자열 인수가 와이드 문자열입니다. 각 함수는 단일 byte–character 대응 하를 동일 하 게 그렇지 않으면 동작합니다.
strtod 함수는 두 개의 인수로: 입력된 문자열의 첫 번째가 고 변환 프로세스가 끝나는 두 번째 문자에 대 한 포인터입니다.strtolstrtoul, _strtoi64 및 _strtoui64 변환 프로세스에서 사용할 기본 번호는 세 번째 인수를 사용 합니다.
입력된 문자열의 지정 된 형식의 숫자 값으로 해석 될 수 있는 문자 시퀀스입니다.각 함수는 숫자의 일부로 인식할 수 없는 첫 번째 문자에서 문자열 읽기를 중지 합니다.이 종료 null 문자를 수 있습니다.에 대 한 strtol, strtoul, _strtoi64, 및 _strtoui64,이 종결 문자가 기본 사용자가 제공한 숫자 보다 크거나 같은 첫 번째 숫자 문자 될 수도 있습니다.
사용자가 제공한 포인터 변환의 마지막 문자에 설정 되어 있지 경우 NULL 호출 시간에 검사를 중지 하는 문자에 대 한 포인터 대신 저장 될 것입니다.변환할 수 있는 경우 (없음 올바른 숫자를 찾을 수 없습니다 또는 잘못 된 자료는 지정 된) 문자열 포인터의 값이 해당 주소에 저장 됩니다.
strtod다음과 같은 형식의 문자열을 요구합니다.
공백] sign] digits] **.**digits [ {d | D | e | E}signdigits
A 공백 는 무시 됩니다; 공백이 나 탭 문자 중 구성 될 수 있습니다 서명 하나는 플러스 (+) 또는 빼기 (-) (-). 및 digits 하나 이상의 소수점이 하 자릿수입니다.숫자가 앞 기 수 문자를 표시 하는 경우 하나 이상의 다음 기 수 문자를 나타나야 합니다.소수 자릿수는 소개 글자만 지수가가 따를 수 있습니다 (d, D, e, 또는 E) 및 선택적으로 부호 있는 정수입니다.지 수는 일부도 아니고 기 수 문자 표시 되 면 기 수 문자 문자열에서 마지막 숫자를 가정 합니다.이 양식에 맞지 않는 첫 번째 문자 검색을 중지 합니다.
strtol, strtoul, _strtoi64, 및 _strtoui64 함수는 다음과 같은 형식의 문자열을 예상한:
공백[{+ | –}]0 { x | X}]] digits
그런 다음 기본 인수가 2와 36 사이의 경우 수의 기준으로 사용 됩니다.0 인 경우 초기 문자를 변환의 끝 포인터에서 참조 밑을 확인 하려면 사용 됩니다.첫 번째 문자 0 이며 두 번째 문자가 'x' 나 '0x' 되 면 문자열 8 진수 정수로 해석 됩니다. 그렇지 않으면이 값은 10 진수로 해석 됩니다.첫 번째 문자 '0'이 고 두 번째 문자 경우 'x' 나 '0x' 문자열은 16 진수 정수로 해석 됩니다.' 1'부터 ' 9' 까지의 첫 번째 문자가 있으면 문자열을 10 진수로 해석 됩니다.문자 'a'부터 'z'를 'A'부터 'Z'까지 35-10 값 할당 됩니다. 문자 할당 된 값 보다 작은 기본 사용할 수 있습니다.strtoul및 _strtoui64 플러스 허용 (+) 또는 빼기 (-) (-) 기호 접두사입니다. 반환 값이 무효화 되어 선행 음수 기호를 나타냅니다.
출력 값의 설정에 의해 영향을 받지는 LC_NUMERIC 범주 설정을 로케일입니다. 참조 하십시오 setlocale 에 대 한 자세한 내용은.버전 없이 이러한 함수를 _l 접미사 사용 현재 로케일에 대 한이 로케일 종속 동작입니다. 버전에는 _l 접미사는 대신 전달 된 로캘 매개 변수를 사용할 경우를 제외 하 고 동일 합니다.
값이이 함수에서 반환 하는 경우 오버플로 또는 언더플로 발생 합니다 또는 변환이 불가능 하면 특수 한 값을 대/소문자와 같이 반환 됩니다.
Function |
조건 |
반환 값 |
---|---|---|
strtod |
오버플로가 발생했습니다. |
+/- HUGE_VAL |
strtod |
언더플로 또는 변환 없음 |
0 |
strtol |
+ 오버플로 |
LONG_MAX |
strtol |
오버플로 |
LONG_MIN |
strtol |
언더플로 또는 변환 없음 |
0 |
_strtoi64 |
+ 오버플로 |
_I64_MAX |
_strtoi64 |
오버플로 |
_I64_MIN |
_strtoi64 |
변환 하지 않음 |
0 |
_strtoui64 |
오버플로가 발생했습니다. |
_UI64_MAX |
_strtoui64 |
변환 하지 않음 |
0 |
_I64_MAX, _I64_MIN, 및 _UI64_MAX 에서 정의 됩니다.H.
wcstod, wcstol, wcstoul, _wcstoi64, and _wcstoui64 are wide-character versions of strtod, strtol, strtoul, _strtoi64, and _strtoui64, respectively; 각 와이드 문자 함수에 변환의 최종 인수에 대 한 포인터는 와이드 문자열입니다.그렇지 않으면 각 와이드 문자 함수를 단일 byte–character 대응 동일 하 게 동작합니다.