string.h

Do operacji na napisach (ciągach znaków, tekstach) wykorzystujemy następujące funkcje z biblioteki string.h:

  • char* strcat(char* s1, char* s2) – funkcja dołącza na końcu tekstu reprezentowanego przez s1 kopię tekstu s2, nie jest alokowana pamięć - połączone teksty muszą się zmieścić w obszarze wskazywanym przez s1, dodatkowo funkcja zwraca wskaźnik do połączonego ciągu znaków (s1),
  • char* strncat(char* s1, char* s2, size_t n) – funkcja działą analogicznie do strcat() z tym, że dołącza do tekstu s1 co najwyżej n znaków z tekstu s2,
  • int strcmp(char* s1, char* s2) – funkcja służy do porónywania tekstów, porównywanie odbywa się znak po znaku od lewej do prawej (wg kodów ASCII), rozróżniane są małe i duże litery, zwraca wartość mniejszą od zera, gdy s1<s2, większą od zera, gdy s1>s2 i 0 w przypadku identycznych tekstów,
  • int strncmp(char* s1, char* s2, size_t n) – funkcja działa analogicznie do strcmp() z tym, że porównuje nie więcej niż n znaków z podanych tekstów,
  • char* strcpy(char* s1, char* s2) – funkcja kopiuje tekst z s2 do s1, dodatkowo zwracany jest wskaźnik do tekstu s1,
  • char* strncpy(char* s1, char* s2, size_t n) – funkcja działa analogicznie do strcpy() z tym, że kopiuje co najwyżej n znaków z s2 do s1,
  • size_t strlen(char* s) – funkcja zwraca ilość znaków wchodzących w skład tekstu s, znak terminujący '\0' nie jest wliczany,
  • char* strchr(char* s, char c) – funkcja zwraca wskaźnik do pierwszego wystąpienia litery c w tekście zawartym w zmiennej s, jeśli litera nie występuje funkcja zwraca NULL,
  • char* strrchr(char* s, char c) - funkcja zwraca wskaźnik do ostatniego wystąpienia litery c w tekście zawartym w zmiennej s, jeśli litera nie występuje funkcja zwraca NULL,
  • char* strstr(char* s1, char* s2) – funkcja zwraca wskaźnik do pierwszego wystąpienia ciągu znaków s2 w tekście s1, jeśli taki ciąg znaków nie występuje zwracana jest wartość NULL, jeśli s2 jest ciągiem pustym zwracany jest wskaźnik s1,
  • char* strdup(char* s) – funkcja zwraca wskaźnik do nowego ciągu znaków będącego kopią tekstu s, pamięć na ten nowy ciąg znaków jest alokowana przy użyciu funkcji malloc(), jeśli nie można zaalokować pamięci zwracana jest wartość NULL.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License