_cgets_s, _cgetws_s
Ruft eine Zeichenfolge aus der Konsole ab. Diese Versionen einer _cgets und _cgetws verwenden werden, wie in Sicherheitsfunktionen in der CRT beschrieben.
Wichtig
Diese API kann nicht in Anwendungen verwendet werden, die im Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.
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 in Einzelbyte- oder für Breitzeichen, das auch die maximale Anzahl der zu lesende 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 dienen dazu eine Zeichenfolge von der Konsole und kopieren die Zeichenfolge (mit einem NULL-Zeichen) in buffer. _cgetws_s ist die Breitzeichen-Version der Funktion; von der Zeichengröße ist das Verhalten der beiden Funktionen identisch. Die maximale Größe der zu lesende Zeichenfolge wird in der numberOfElements als Parameter übergeben. Diese Größe sollte ein zusätzliches Zeichen für das abschließende NULL-Zeichen enthalten. Die tatsächliche Anzahl der Zeichenlesens wird in pSizeRead abgelegt.
Wenn ein Fehler während des Vorgangs im oder Ü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 auf EINVAL festgelegt und EINVAL zurückgegeben wird.
In C++ wird die Verwendung dieser Funktionen von Vorlagenüberladungen vereinfacht; Überladungen können die Pufferlänge automatisch ableiten, Dadurch werden Konflikte die Anforderung, einem Größenargument anzugeben, und sie können die älteren, weniger-sicheren Funktionen durch die neueren, sichereren Entsprechungen automatisch ersetzen. Weitere Informationen finden Sie unter Sichere Vorlagenüberladungen.
Zuordnung generischer 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 Informationen zur Kompatibilität finden Sie unter Kompatibilität.
.NET Framework-Entsprechung
Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.