STRCHR(3)

ИМЯ
strchr, strrchr, strchrnul - определение местонахождения символа в строке

ОБЗОР
#include <string.h>

char *strchr(const char *s, int c);

char *strrchr(const char *s, int c);
#define _GNU_SOURCE         /* см. feature_test_macros(7) */
#include <string.h>

char *strchrnul(const char *s, int c);

ОПИСАНИЕ
Функция strchr() возвращает указатель на местонахождение первого совпадения с символом c в строке s.

Функция strrchr() возвращает указатель на местонахождение последнего совпадения с символом c в строке s.

Функция strchrnul() подобна strchr(), за исключением того, что если символ c не найден в строке s, то возвращается указатель на байт null в конце s, а не NULL.

Здесь под «символом» подразумевается «байт» — данные функции не работают с широкими и многобайтными символами.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Функции strchr() и strrchr() возвращает указатель на местонахождение первого совпадения с символом или NULL, если символ не найден. Завершающий байт null считается частью строки, и поэтому, если символ c задан как '\0', то эти функции возвращают указатель на завершающий символ.

Функция strchrnul() возвращает указатель на совпавший символ, или указатель на байт null в конце строки s (т.е., s+strlen(s)), если символ не найден.

ВЕРСИИ
Функция strchrnul() впервые появилась в glibc версии 2.1.1.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
strchr(), strrchr(), strchrnul() | Безвредность в нитях | MT-Safe

СООТВЕТСТВИЕ СТАНДАРТАМ
strchr(), strrchr(): POSIX.1-2001, POSIX.1-2008, C89, C99, SVr4, 4.3BSD.

Функция strchrnul() является расширением GNU.

СМОТРИТЕ ТАКЖЕ
index(3), memchr(3), rindex(3), string(3), strlen(3), strpbrk(3), strsep(3), strspn(3), strstr(3), strtok(3), wcschr(3), wcsrchr(3)