STRCPY(3)

NAZWA
strcpy, strncpy - kopiuje łańcuch znaków

SKŁADNIA
#include <string.h>

char *strcpy(char *dest, const char *src);

char *strncpy(char *dest, const char *src, size_t n);

OPIS
Funkcja strcpy() kopiuje łańcuch znaków wskazywany przez src (łącznie z kończącym znakiem `\0') to tablicy wskazywanej przez dest. Łańcuchy nie mogą na siebie nachodzić. Łańcuch docelowy dest musi być wystarczająco długi, żeby pomieścić kopie src.

Funkcja strncpy() jest podobna do strcpy(), z tym że kopiuje nie więcej niż n bajtów z src. Dlatego, jeżeli nie było znaku null wśród pierwszych n bajtów src, łańcuch skopiwany nie będzie zakończony znakiem null.

Jeżeli długość src jest mniejsza niż n, to reszta dest zostanie wypełniona znakiem null.

WARTOŚĆ ZWRACANA
Funkcje strcpy() i strncpy() zwracają wskaźnik do łańcucha docelowego dest.

BŁĘDY
Jeżeli łańcuch docelowy w funkcji strcpy() nie jest wystarczająco długi (czytaj: programista jest głupi/leniwy, i nie sprawdził rozmiaru przed kopiowaniem) to może zdarzyć się cokolwiek. Przepełnianie łańcuchów o stałej długości jest ulubioną techniką crackerów.

ZGODNE Z
SVID 3, POSIX, BSD 4.3, ISO 9899

ZOBACZ TAKŻE
bcopy(3), memccpy(3), memcpy(3), memmove(3)