gets_s, _getws_s

stdin akışından bir hat alır.Bu sürümleri alır, _getws açıklandığı gibi güvenlik geliştirmeleri, sahip CRT'deki Güvenlik Özellikleri.

char *gets_s( 
   char *buffer,
   size_t sizeInCharacters
);
wchar_t *_getws_s( 
   wchar_t *buffer,
   size_t sizeInCharacters
);
template <size_t size>
char *gets_s( 
   char (&buffer)[size]
); // C++ only
template <size_t size>
wchar_t *_getws_s( 
   wchar_t (&buffer)[size]
); // C++ only

Parametreler

  • [out] buffer
    Girdi dizesi için depolama konumu.

  • [in] sizeInCharacters
    Arabellek boyutu.

Dönüş Değeri

Başarılıysa buffer döndürür.NULL işaretçisi hata veya dosya sonu koşulunu gösterir.Hangisinin gerçekleştiğini belirlemek için, ferror veya feof kullanın.

Notlar

gets_s işlevi standart giriş akışı stdin üzerinden bir satır okur ve buffer içerisine saklar.Satır, ilk yeni satır karakteri ("\n") dahil olmak üzere bu karaktere kadar tüm karakterleri içermektedir.gets_s daha sonra, satırı döndürmeden önce yeni satır karakterini bir sıfır karakteri ('\0') ile değiştirir.Buna karşılık, fgets_s işlevi yeni satır karakterini korur.

Okuyun ilk karakteri dosya sonu karakteri ise, bir null karakteri başında depolanan buffer ve NULL döndürülür.

_getwsgets_s öğesinin geniş karakterli bir sürümüdür; bağımsız değişkeni ve dönüş değeri geniş karakterli dizelerdir.

Varsa buffer olan NULL veya sizeInCharacters eşit veya sıfırdan azsa veya arabellek giriş hattı ve null Sonlandırıcı içeremeyecek kadar küçük ise, bu işlevler bir geçersiz parametre işleyicisi açıklandığı biçimde harekete Parametre Doğrulama.Yürütmenin devam etmesine izin verilirse, bu işlevler NULL döndürür ve errno öğesini ERANGE olarak ayarlar.

C++ dilinde bu işlevleri kullanmak şablon aşırı yüklemeleriyle basitleştirilmiştir; aşırı yüklemeler arabellek uzunluğunu otomatik olarak çıkarabilir (bir boyut bağımsız değişkeni belirtme gereksinimi ortadan kalkar) ve bunlar otomatik olarak eski ve güvenli olmayan işlevlerle daha yeni ve güvenli karşılıklarını değiştirir.Daha fazla bilgi için bkz. Güvenli Şablon Aşırı Yüklemeleri.

Genel Metin Yordam Eşleşmeleri

TCHAR.H yordamı

_UNICODE & _MBCS tanımlanmamış

_MBCS tanımlanmış

_UNICODE tanımlanmış

_getts

gets_s

gets_s

_getws

Gereksinimler

Yordam

Gerekli başlık

gets_s

<stdio.h>

_getws

<stdio.h> or <wchar.h>

Konsol Windows Mağazası uygulamalarında desteklenmiyor.stdin, stdout ve stderr konsolları ile ilişkili standart akış işleyicileri, C çalışma zamanı işlevleri bunları Windows Mağazası uygulamalarında kullanmadan önce yeniden yönlendirilmelidir.Ek uyumluluk bilgileri için bkz. Uyumluluk.

Örnek

// crt_gets_s.c
// This program retrieves a string from the stdin and 
// prints the same string to the console.

#include <stdio.h>

int main( void )
{
   char line[21]; // room for 20 chars + '\0'
   gets_s( line, 20 );
   printf( "The line entered was: %s\n", line );
}
  

.NET Framework Eşdeğeri

System::Console::Read

Ayrıca bkz.

Başvuru

Akış G/Ç

gets, _getws

fgets, fgetws

fputs, fputws

puts, _putws