Aracılığıyla paylaş


_cscanf_s, _cscanf_s_l, _cwscanf_s, _cwscanf_s_l

Biçimlendirilmiş verileri konsoldan okur. daha güvenli olan bu , , _cscanf_l_cwscanf_l_cwscanfsürümlerinin_cscanf, CRT'deki Güvenlik özellikleri bölümünde açıklandığı gibi güvenlik geliştirmeleri vardır.

Önemli

Bu API, Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz. Daha fazla bilgi için bkz. Evrensel Windows Platformu uygulamalarında desteklenmeyen CRT işlevleri.

Sözdizimi

int _cscanf_s(
   const char *format [,
   argument] ...
);
int _cscanf_s_l(
   const char *format,
   _locale_t locale [,
   argument] ...
);
int _cwscanf_s(
   const wchar_t *format [,
   argument] ...
);
int _cwscanf_s_l(
   const wchar_t *format,
   _locale_t locale [,
   argument] ...
);

Parametreler

format
Biçim denetimi dizesi.

argument
İsteğe bağlı parametreler.

locale
Kullanılacak yerel ayar.

Dönüş değeri

Başarıyla dönüştürülen ve atanan alanların sayısı. Dönüş değeri okunmuş ancak atanmamış alanları içermez. Dönüş değeri, dosyanın sonunda okuma denemesine yöneliktir EOF . EOF Klavye girişi işletim sistemi komut satırı düzeyinde yeniden yönlendirildiğinde de döndürülebilir. Sıfır dönüş değeri, hiçbir alanın atanmadığı anlamına gelir.

Bu işlevler parametrelerini doğrular. Boş bir işaretçiyseformat, bu işlevler Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisini çağırır. Yürütmenin devam etmesi için izin verilirse, bu işlevler döndürür EOFve errno olarak EINVALayarlanır.

Açıklamalar

işlevi verileri _cscanf_s doğrudan konsolundan tarafından argumentverilen konumlara okur. _getche İşlev, karakterleri okumak için kullanılır. İsteğe bağlı her parametre, içindeki bir tür tanımlayıcısına formatkarşılık gelen bir türe sahip bir değişkene yönelik bir işaretçi olmalıdır. Biçim, giriş alanlarının yorumlanmasını denetler ve işlevin parametresiyle format aynı forma ve işleve scanf_s sahiptir. _cscanf_s Normalde giriş karakterini yankılasa da, son çağrı öğesine _ungetchise bunu yapmaz.

Ailedeki scanf işlevlerin diğer güvenli sürümleri gibi ve c, C, _cscanf_s s, S ve _cwscanf_s [ tür alanı karakterleri için boyut bağımsız değişkenleri gerektirir. Daha fazla bilgi için bkz . scanf Width Specification.

Dekont

Boyut parametresi türündedir unsigned, türünde değildir size_t.

Bu işlevlerin sonekli _l sürümleri aynıdır, ancak geçerli iş parçacığı yerel ayarı yerine geçirilen yerel ayar parametresini kullanırlar.

Genel metin yordamı eşlemeleri

TCHAR.H yordamı _UNICODE ve _MBCS tanımlanmadı _MBCS Tanımlanan _UNICODE Tanımlanan
_tcscanf_s _cscanf_s _cscanf_s _cwscanf_s
_tcscanf_s_l _cscanf_s_l _cscanf_s_l _cwscanf_s_l

Gereksinimler

Yordam Gerekli başlık
_cscanf_s, _cscanf_s_l <conio.h>
_cwscanf_s, _cwscanf_s_l <conio.h> veya <wchar.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Kitaplıklar

C çalışma zamanı kitaplıklarının tüm sürümleri.

Örnek

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

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

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

   result = _cscanf_s( "%i %i %i", &n[0], &n[1], &n[2] );
   _cprintf_s( "\r\nYou entered " );
   for( i=0; i<result; i++ )
      _cprintf_s( "%i ", n[i] );
   _cprintf_s( "\r\n" );
}
1 2 3
You entered 1 2 3

Ayrıca bkz.

Konsol ve bağlantı noktası G/Ç
_cprintf, _cprintf_l, _cwprintf, _cwprintf_l
fscanf_s, _fscanf_s_l, fwscanf_s, _fwscanf_s_l
scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l
sscanf_s, _sscanf_s_l, swscanf_s, _swscanf_s_l