Freigeben über


_cgets_s, _cgetws_s

Ruft eine Zeichenfolge aus der Konsole ab.Diese Versionen von _cgets und _cgetws haben Sicherheitserweiterungen, wie in Sicherheitsfeatures im CRT beschrieben.

Wichtiger HinweisWichtig

Diese API kann nicht in den Anwendungen verwendet werden, die in Windows-Runtime ausführen.Weitere Informationen finden Sie unter CRT-Funktionen unterstützt nicht mit /ZW.

errno_t _cgets_s( char *buffer, size_t numberOfElements, size_t *pSizeRead ); errno_t _cgetws_s( wchar_t *buffer size_t numberOfElements, size_t *pSizeRead ); template <size_t size> errno_t _cgets_s( char (&buffer)[size], size_t *pSizeRead ); // C++ only template <size_t size> errno_t _cgetws_s( wchar_t (&buffer)[size], size_t *pSizeRead ); // C++ only

Parameter

  • [out] buffer
    Speicherort für Daten.

  • [in] numberOfElements
    Die Größe des Puffers im Einzelbyte- oder in den Breitzeichen, das auch die maximale Anzahl von gelesen werden Zeichen ist.

  • [in] pSizeRead
    Die Anzahl der tatsächlich gelesenen Zeichen.

Rückgabewert

Der Rückgabewert ist null, wenn erfolgreich; andernfalls ein Fehlercode, wenn ein Fehler auftritt.

Fehlerbedingungen

buffer

numberOfElements

pSizeRead

Return

Inhalt von buffer

NULL

any

any

EINVAL

nicht verfügbar

nicht NULL

0 (Null)

any

EINVAL

nicht geändert

nicht NULL

any

NULL

EINVAL

Zeichenfolge der Länge 0 (null)

Hinweise

_cgets_s und _cgetws_s lesen eine Zeichenfolge aus der Konsole und kopieren die Zeichenfolge (mit einem NULL-Zeichen) in buffer._cgetws_s ist die Breitzeichen-Version der Funktion; als die Zeichengröße ist das Verhalten dieser zwei Funktionen identisch.Die maximale Größe der gelesen werden Zeichenfolge wird in als der numberOfElements-Parameter übergeben.Diese Größe sollte ein zusätzliches Zeichen für das endgültige NULL-Zeichen enthalten.Die tatsächliche Anzahl der Zeichenlesens wird in pSizeRead eingefügt.

Wenn ein Fehler während des Vorgangs oder im Überprüfen der Parameter auftritt, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, wird errno zu EINVAL festgelegt und EINVAL wird zurückgegeben.

In C++ wird der Verwendung dieser Funktionen durch Vorlagenüberladungen vereinfacht; die Überladungen können Pufferlänge automatisch ableiten, sobald entfernen die Anforderung, ein Größenargument anzugeben, und sie können die ältere, weniger-sicheren Funktionen durch ihre späteren, sichereren Entsprechungen automatisch ersetzen.Weitere Informationen finden Sie unter Speichern Sie Vorlagen-Überladungen.

Zuordnung generische Textroutinen

Tchar.h-Routine

_UNICODE und _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_cgetts_s

_cgets_s

_cgets_s

_cgetws_s

Anforderungen

Routine

Erforderlicher Header

_cgets_s

<conio.h>

_cgetws_s

<conio.h> oder <wchar.h>

Weitere Kompatibilitätsinformation finden Sie unter Kompatibilität.

.NET Framework-Entsprechung

Nicht zutreffend. Um die Standard-C-Funktion aufzurufen, verwenden Sie PInvoke. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

Siehe auch

Referenz

Konsole und Port E/A

_getch, _getwch