_cscanf_s
, _cscanf_s_l
, _cwscanf_s
, _cwscanf_s_l
Biçimlendirilmiş verileri konsoldan okur. daha güvenli olan bu , , _cscanf_l
_cwscanf_l
_cwscanf
sü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 EOF
ve errno
olarak EINVAL
ayarlanır.
Açıklamalar
işlevi verileri _cscanf_s
doğrudan konsolundan tarafından argument
verilen 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 format
karşı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 _ungetch
ise 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.
Not
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