Sdílet prostřednictvím


_cscanf, _cscanf_l, _cwscanf, _cwscanf_l

Přečte formátovaná data z konzoly.Bezpečnější verze těchto funkcí jsou k dispozici; viz _cscanf_s, _cscanf_s_l, _cwscanf_s, _cwscanf_s_l.

Důležitá poznámkaDůležité

Toto API nelze použít v aplikacích, které jsou spuštěny v modulu Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /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] ... 
);

Parametry

  • format
    Řetězec řízení formátu.

  • argument
    Volitelné parametry.

  • locale
    Použité národní prostředí.

Vrácená hodnota

Počet polí, které byly úspěšně převedeny a přiřazeny.Návratová hodnota nezahrnuje pole, které bylo přečteno, ale nepřiřazeno.Návratová hodnota je EOF pro pokus o čtení na konci souboru.Tato situace může nastat, když je vstup z klávesnice přesměrován na úrovni příkazového řádku operačního systému.Vrácená hodnota 0 znamená, že nebyla přiřazena žádná pole.

Poznámky

Funkce _cscanf načte data přímo z konzoly do míst daných argumentem argument.Funkce _getche se používá ke čtení znaků.Každý volitelný parametr musí ukazovat na proměnnou s typem, který odpovídá specifikátoru typů ve format.Formát řídí interpretaci vstupních polí a má stejnou formu a funkci jako parametr format funkce scanf.Zatímco _cscanf obvykle vrátí vstupní znak, neučiní tak, pokud poslední volání bylo _ungetch.

Tato funkce ověřuje své parametry.Pokud je formát NULL, je vyvolána obslužná rutina neplatné parametru, jak je popsáno v Ověření parametru.Pokud smí provádění pokračovat, errno se nastaví na EINVAL a funkce vrátí EOF.

Verze těchto funkcí s příponou _l jsou stejné s tím rozdílem, že používají parametr předané národní prostředí namísto aktuálního národní prostředí pro vlákno.

Rutinní mapování obecného textu

Rutina TCHAR.H

_UNICODE a _MBCS nejsou definovány

_MBCS definováno

_UNICODE definováno

_tcscanf

_cscanf

_cscanf

_cwscanf

_tcscanf_l

_cscanf_l

_cscanf_l

_cwscanf_l

Požadavky

Rutina

Požadované záhlaví

_cscanf,_cscanf_l

<conio.h>

_cwscanf, _cwscanf_l

<conio.h> nebo <wchar.h>

Další informace o kompatibilitě naleznete v tématu Kompatibilita.

Příklad

// 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" );
}

Vstup

1 2 3

Výsledek

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

Viz také

Referenční dokumentace

I/O konzoly a portu

_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