Função StrToIntExA (shlwapi.h)

Converte uma cadeia de caracteres que representa um número decimal ou hexadecimal em um inteiro.

Sintaxe

BOOL StrToIntExA(
  [in]  PCSTR      pszString,
        STIF_FLAGS dwFlags,
  [out] int        *piRet
);

Parâmetros

[in] pszString

Tipo: PCTSTR

Um ponteiro para a cadeia de caracteres terminada em nulo a ser convertida. Para obter mais detalhes sobre as formas válidas da cadeia de caracteres, consulte a seção Comentários.

dwFlags

Tipo: STIF_FLAGS

Um dos valores a seguir que especificam como pszString deve ser analisado para sua conversão em um inteiro.

STIF_DEFAULT

A cadeia de caracteres em pszString contém a representação de um valor decimal.

STIF_SUPPORT_HEX

A cadeia de caracteres em pszString contém a representação de um valor decimal ou hexadecimal. Observe que, em representações hexadecimal, os caracteres A-F não diferenciam maiúsculas de minúsculas.

[out] piRet

Tipo: int*

Um ponteiro para um int que recebe a cadeia de caracteres convertida. Por exemplo, no caso da cadeia de caracteres "123", o inteiro apontado por esse valor recebe o valor inteiro 123.

Se essa função retornar FALSE, esse valor será indefinido.

Se o valor retornado for muito grande para ser contido em uma variável do tipo int, esse parâmetro conterá os 32 bits de ordem baixa do valor. Todos os bits de alta ordem além disso são perdidos.

Valor retornado

Tipo: BOOL

Retornará TRUE se a cadeia de caracteres for convertida; caso contrário , FALSE.

Comentários

A cadeia de caracteres apontada pelo parâmetro pszString deve ter um dos formulários a seguir a ser analisado com êxito.

  • Esse formulário é aceito como um valor decimal em qualquer sinalizador. Sintaxe ''' (espaço em branco opcional)(sinal opcional)(um ou mais dígitos decimais) '''
  • Esses formulários são necessários para valores hexadecimal quando o sinalizador STIF_SUPPORT_HEX é passado. Sintaxe ''' (espaço em branco opcional)(sinal opcional)0x(um ou mais dígitos hexadecimal) '''
    (optional white space)(optional sign)0X(one or more hexadecimal digits)
    
O sinal opcional pode ser o caractere '-' ou '+'; se omitido, o sinal será considerado positivo.
Nota Se o valor for analisado como hexadecimal, o sinal opcional será ignorado, mesmo que seja um caractere '-'. Por exemplo, a cadeia de caracteres "-0x1" é analisada como 1 em vez de -1.
 
Se a cadeia de caracteres apontada por pszString contiver um caractere inválido, esse caractere será considerado o final da cadeia de caracteres a ser convertida e o restante será ignorado. Por exemplo, dada a cadeia de caracteres hexadecimal inválida "0x00am123", StrToIntEx reconhece apenas "0x00a", converte-a no valor inteiro 10 e retorna TRUE.

Observação

O cabeçalho shlwapi.h define StrToIntEx como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlwapi.h
Biblioteca Shlwapi.lib
DLL Shlwapi.dll (versão 4.71 ou posterior)