std:: strncpy
|
Definiert im Header
<cstring>
|
||
|
char
*
strncpy
(
char
*
dest,
const
char
*
src,
std::
size_t
count
)
;
|
||
Kopiert höchstens count Zeichen des Byte-Strings, auf den src zeigt (einschließlich des abschließenden Nullzeichens), in das Zeichenarray, auf das dest zeigt.
Wenn count erreicht wird, bevor der gesamte String src kopiert wurde, ist das resultierende Zeichenarray nicht nullterminiert.
Wenn nach dem Kopieren des abschließenden Nullzeichens von src , count nicht erreicht ist, werden zusätzliche Nullzeichen in dest geschrieben, bis insgesamt count Zeichen geschrieben wurden.
Wenn sich die Zeichenketten überlappen, ist das Verhalten undefiniert.
Inhaltsverzeichnis |
Parameter
| dest | - | Zeiger auf das Zeichenarray, in das kopiert werden soll |
| src | - | Zeiger auf die Byte-Zeichenkette, aus der kopiert werden soll |
| count | - | maximale Anzahl der zu kopierenden Zeichen |
Rückgabewert
dest
Beispiel
#include <cstring> #include <iostream> int main() { const char* src = "hi"; char dest[6] = {'a', 'b', 'c', 'd', 'e', 'f'}; std::strncpy(dest, src, 5); std::cout << "The contents of dest are: "; for (char c : dest) { if (c) std::cout << c << ' '; else std::cout << "\\0" << ' '; } std::cout << '\n'; }
Ausgabe:
The contents of dest are: h i \0 \0 \0 f
Siehe auch
|
kopiert eine Zeichenkette in eine andere
(Funktion) |
|
|
kopiert einen Puffer in einen anderen
(Funktion) |
|
|
C-Dokumentation
für
strncpy
|
|