strncpy_s, wcsncpy_s

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu string.h - Index


Header-Datei

string.h, mbstring.h

Kategorie

Routinen für Speicher- und String-Bearbeitung, Inline-Routinen

Prototyp

errno_t strncpy_s(char * _RESTRICT dest, rsize_t destmax, const char * _RESTRICT src, rsize_t n);

errno_t wcsncpy_s(wchar_t * _RESTRICT dest, rsize_t destmax, const wchar_t * _RESTRICT src, rsize_t n);

Beschreibung

Ersetzt Strncpy, mbsncpy, wcsncpy und fügt Sicherheitserweiterungen hinzu.

Kopiert die angegebene Anzahl von Bytes aus einem String in einen anderen, der bei Bedarf abgeschnitten oder aufgefüllt wird.

strncpy_s kopiert bis zu n Zeichen aus src in den String dest, der bei Bedarf abgeschnitten oder mit Nullzeichen aufgefüllt wird. Zeichen nach '\0' werden nicht kopiert. Der String dest ist möglicherweise nicht nullterminiert, wenn die Länge von src gleich destmax oder größer ist.

Bei einer Verletzung von Laufzeiteinschränkungen oder wenn keine Zeichen aus src kopiert wurden, wird dest[0] auf Null gesetzt.

Rückgabewert

strncpy_S gibt dest zurück.

Beispiel

#include <stdio.h> 
#include <string.h> 
int main(void) 
{ 
   char string[10]; 
   char *str1 = "abcdefghi"; 
   strncpy_s(string, 10, str1, 3); 
   string[3] = '\0'; 
   printf("%s\n", string); 
   return 0; 
}

Portabilität

POSIX Win32 ANSI C ANSI C++

strncpy_s

+

+

+

+

Siehe auch