_cscanf_s, _cscanf_s_l, _cwscanf_s, _cwscanf_s_l
Konsoldan biçimlendirilmiş veri okur.Daha güvenli _cscanf, _cscanf_l, _cwscanf, _cwscanf_l sürümlerinde CRT'deki Güvenlik Özellikleri içinde açıklandığı gibi güvenlik geliştirmeleri mevcut olabilir.
![]() |
---|
Bu API, Windows Çalışma Zamanı'nda yürütülen uygulamalarda kullanılamaz.Daha fazla bilgi için bkz /ZW ile desteklenmeyen CRT işlevleri. |
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ülüp atanan alan sayısı.Dönüş değeri okunan ancak atanmayan alanları içeremez.Dönüş değeri dosya sonunda EOF için bir okuma girişimidir.Bu, klavye girişi, işletim sistemi komut satırı düzeyine yeniden yönlendirildiğinde ortaya çıkabilir.Döndürülen değer 0 ise hiçbir alan atanmamış demektir.
Bu işlevler, kendi parametrelerini doğrular.format bir null işaretçisiyse, bu işlevler geçersiz parametre işleyicisini Parametre Doğrulama bölümünde açıklandığı gibi çağırır.Yürütmenin devam etmesine izin verilirse, bu işlevler EOF döndürür ve errnoöğesi EINVAL olarak ayarlanır.
Notlar
_cscanf_s işlevi, doğrudan konsoldan argument değişkeninin verdiği konumlara veri okur._getche işlevi karakter okumak için kullanılır.İsteğe bağlı her parametre format içinde bir tür belirleyiciye karşılık gelen bir türe sahip değişkene işaret etmelidir.Biçim, format parametresi, scanf_s işlevi için giriş alanlarını ve aynı biçim ve işleve sahip yorumunu denetler.Normalde _cscanf_s girdi karakterini kopyalarken, son çağrı _ungetch ise bunu gerçekleştirmez.
scanf ailesindeki işlevlerin diğer güveni sürümleri gibi,_cscanf_s ve _cswscanf_s için de c, C, s, S ve [ türünden alan karakterleriyle ilgili boyut bağımsız değişkenleri gerekir.Daha fazla bilgi için bkz. sacnf Genişlik Belirtimi.
[!NOT]
Boyut parametresi size_t değil unsigned türündedir.
_l sonekine sahip bu işlevlerin sürümleri, geçerli iş parçacığı yerel ayarı yerine iletilen yerel ayar parametresini kullanmalarıdır.
Genel Metin Yordam Eşleşmeleri
TCHAR.H yordamı |
_UNICODE ve _MBCS tanımlanmaz |
_MBCS tanımlanmış |
_UNICODE tanımlanmış |
---|---|---|---|
_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 ek uyumluluk bilgileri için bkz. Uyumluluk.
Kitaplıklar
C çalışma zamanı kitaplıklarının çoklu iş parçacığı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" );
}
Giriş
1 2 3
Çıktı
You entered 1 2 3
Ayrıca bkz.
Başvuru
Konsol ve Bağlantı Noktası G/Ç
_cprintf, _cprintf_l, _cwprintf, _cwprintf_l
fscanf_s, _fscanf_s_l, fwscanf_s, _fwscanf_s_l