Compartilhar via


_cscanf, _cscanf_l, _cwscanf, _cwscanf_l

Dados formatados de leitura de console.Versões mais seguros dessas funções estão disponíveis; consulte _cscanf_s, _cscanf_s_l, _cwscanf_s, _cwscanf_s_l.

Observação importanteImportante

Este API não pode ser usado em aplicativos executados em Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT não suportadas com /ZW.

int _cscanf( const char *format [, argument] ... ); int _cscanf_l( const char *format, locale_t locale [, argument] ... ); int _cwscanf( const wchar_t *format [, argument] ... ); int _cwscanf_l( const wchar_t *format, locale_t locale [, argument] ... );

Parâmetros

  • format
    Cadeia de caracteres de formato - controle.

  • argument
    Parâmetros opcionais.

  • locale
    A localidade a ser usada.

Valor de retorno

O número de campos que com êxito foram convertidos e atribuído.O valor de retorno não inclui os campos que foram lidos mas não atribuído.O valor de retorno é EOF para uma tentativa de ler no final do arquivo.Isso pode ocorrer quando a entrada do teclado é redirecionada no nível do sistema operacional de linha de comando.Um valor de retorno de 0 significa que qualquer campo esteve atribuído.

Comentários

A função de _cscanf ler dados diretamente de console em locais dados por argument.A função de _getche é usada para ler caracteres.Cada parâmetro opcional deve ser um ponteiro para uma variável com um tipo que corresponde a um especificador de tipo em format.Os controles de formato a interpretação de entrada e coloca tem o mesmo formulário e função que o parâmetro de format para a função de scanf .Quando _cscanf ecoar normalmente o caractere de entrada, não faz isso se a última chamada foi a _ungetch.

Essa função valida os seus parâmetros.Se o formato é NULO, o manipulador inválido do parâmetro é invocado, como descrito em Validação de parâmetro.Se a execução é permitida continuar, errno é definido como EINVAL e a função retorna EOF.

As versões dessas funções com o sufixo de _l são idênticas exceto que usam o parâmetro de localidade passado em vez de localidade atual da thread.

Mapeamentos da rotina de Genérico- texto

Rotina de TCHAR.H

_UNICODE e não definidos _MBCS

_MBCS definido

_UNICODE definido

_tcscanf

_cscanf

_cscanf

_cwscanf

_tcscanf_l

_cscanf_l

_cscanf_l

_cwscanf_l

Requisitos

Rotina

Cabeçalho necessário

_cscanf,_cscanf_l

<conio.h>

_cwscanf, _cwscanf_l

<conio.h> ou <wchar.h>

Para mais informações, consulte Compatibilidade de compatibilidade na introdução.

Exemplo

// crt_cscanf.c
// compile with: /c /W3
/* This program prompts for a string
 * and uses _cscanf to read in the response.
 * Then _cscanf returns the number of items
 * matched, and the program displays that number.
 */

#include <stdio.h>
#include <conio.h>

int main( void )
{
   int   result, i[3];

   _cprintf_s( "Enter three integers: ");
   result = _cscanf( "%i %i %i", &i[0], &i[1], &i[2] ); // C4996
   // Note: _cscanf is deprecated; consider using _cscanf_s instead
   _cprintf_s( "\r\nYou entered " );
   while( result-- )
      _cprintf_s( "%i ", i[result] );
   _cprintf_s( "\r\n" );
}

Entrada

1 2 3

Saída

Enter three integers: 1 2 3
You entered 3 2 1

Consulte também

Referência

Console e a porta de e/S

_cprintf, _cprintf_l, _cwprintf, _cwprintf_l

fscanf, _fscanf_l, fwscanf, _fwscanf_l

scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l

sscanf, _sscanf_l, swscanf, _swscanf_l