_strtoi64, _wcstoi64, _strtoi64_l, _wcstoi64_l
Converter uma seqüência de caracteres para um __int64 valor.
__int64 _strtoi64(
const char *nptr,
char **endptr,
int base
);
__int64 _wcstoi64(
const wchar_t *nptr,
wchar_t **endptr,
int base
);
__int64 _strtoi64_l(
const char *nptr,
char **endptr,
int base,
_locale_t locale
);
__int64 _wcstoi64_l(
const wchar_t *nptr,
wchar_t **endptr,
int base,
_locale_t locale
);
Parâmetros
nptr
Seqüência terminada por caractere nulo para converter.endptr
Ponteiro para o caractere que interrompe a varredura.base
Número base a ser usado.locale
A localidade para usar.
Valor de retorno
_strtoi64Retorna o valor representado na seqüência de caracteres nptr, exceto quando a representação poderia causar um estouro de capacidade, que nesse caso retorna _I64_MAX ou _I64_MIN.A função retornará 0 se nenhuma conversão pode ser executada._wcstoi64Retorna valores analogamente para strtoi64.
_I64_MAXe _I64_MIN são definidos em limites.H.
Se nptr é NULL ou o base é diferente de zero e o menor 2 ou maior do que 36, errno for definido como EINVAL.
Consulte _doserrno, errno, _sys_errlist e _sys_nerr para obter mais informações sobre estes e outros, códigos de retorno.
Comentários
The _strtoi64function converts nptr to an __int64.Ambas as funções parar de ler a seqüência de caracteres nptr no primeiro caractere que não reconhecem como parte de um número.Isso pode ser o caractere nulo de terminação, ou pode ser o primeiro caractere numérico maior que ou igual a base._wcstoi64é uma versão de caractere largo de _strtoi64; sua nptr argumento é uma seqüência de caracteres largos.Essas funções se comportam exatamente caso contrário.
Mapeamentos de rotina de texto genérico
TCHAR.Rotina H |
_ Unicode & _ MBCS do arquivo não definido |
_ MBCS do arquivo definido |
_ Unicode definido |
---|---|---|---|
_tcstoi64 |
_strtoi64 |
_strtoi64 |
_wcstoi64 |
_tcstoi64_l |
_strtoi64_l |
_strtoi64_l |
_wcstoi64_l |
A localidade LC_NUMERIC categoria determina o reconhecimento do caractere fracionário nptr*;* para obter mais informações, consulte setlocale.As funções sem o sufixo _l usarem o local atual; _strtoi64_le_wcstoi64_l são idênticos a função correspondente sem o _l de sufixo, exceto que eles usam a localidade do passado em vez disso.Para obter mais informações, consulte Localidade.
Se endptr não é NULL, um ponteiro para o caractere que parou a verificação é armazenado no local apontado pelo endptr.Se nenhuma conversão pode ser realizada (não foi encontrado nenhum dígito válido ou uma base inválida foi especificada), o valor de nptr é armazenado no local apontado pelo endptr.
_strtoi64espera nptr para apontar para uma seqüência de caracteres do seguinte formato:
[whitespace] [{+ | –}] [0 [{ x | X }]] [digits]
A whitespace pode consistir em caracteres de espaço e tabulação, que são ignorados; digitssão um ou mais dígitos decimais.O primeiro caractere que não cabe neste formulário pára a varredura.Se base está entre 2 e 36, e em seguida, ele é usado como a base do número.Se base é 0, os caracteres iniciais da seqüência de caracteres apontada por nptr são usados para determinar a base.Se o primeiro caractere é 0 e o segundo caractere não é 'x' ou 'X', a seqüência de caracteres é interpretada como um inteiro octal; Caso contrário, ele é interpretado como um número decimal.Se o primeiro caractere é '0' e o segundo é o caractere 'x' ou 'X', a seqüência de caracteres é interpretada como um inteiro hexadecimal.Se o primeiro caractere é ' 1' a ' 9', a seqüência de caracteres é interpretada como um número inteiro decimal.As letras 'a' a 'z' (ou 'A' a 'Z') é atribuída os valores de 10 a 35; apenas letras cujos valores atribuídos estão menos de base são permitidos.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_strtoi64, _strtoi64_l |
<stdlib.h> |
_wcstoi64, _wcstoi64_l |
<stdlib.h> ou <wchar.h> |
Para obter informações adicionais de compatibilidade, consulte compatibilidade na introdução.
Consulte também
Referência
Seqüência de funções de valor numérico
strtod, _strtod_l, wcstod, _wcstod_l