C/strncpy

Z Wikibooks, biblioteki wolnych podręczników.

< C

Spis treści

[edytuj] Deklaracja

char *strncpy (char* strTo, const char* strFrom, size_t size);

[edytuj] Plik nagłówkowy

string.h

[edytuj] Argumenty

strTo 
wskaźnik do docelowej tablicy znaków.
strFrom 
wskaźnik do źródłowej tablicy znaków.
size 
liczba znakow do skopiowania.

[edytuj] Opis

Funkcja kopiuje co najwyżej size znaków z tekstu w tablicy strFrom do tablicy strTo. Funkcja kopiuje znak po znaku od początku, aż skopiuje size znaków lub napotka znak '\0', wtedy za resztę znaków do skopiowania wstawia '\0'.

[edytuj] Wartość zwracana

Funkcja zwraca wskaźnik na strTo.

[edytuj] Uwaga

Tablica strTo powinna być większa od wartości size, ponieważ, w przeciwnym wypadku, może dojść do przepełnienia bufora.

[edytuj] Przykład

 #include <stdio.h>
 #include <string.h>
 
 int main (void)
 {
    char strTo[30];
    char *strFrom = "Ala ma kota";  /* tekst krótszy niż 30 znaków */
    strncpy (strTo, strFrom, 12);
    printf("%s", strTo);
 }

[edytuj] Zobacz też

strcpy
strlcpy
strncat
memcpy