1

Тема: Бібліотечна функція C - strchr()

Привіт всім, з визначення з інтернету не надто розумію, що саме робить функція strchr. Хтось може пояснити або навести приклад того, як вона працює, чи має якийсь аналог, чи можна її чимось замінити?

2

Re: Бібліотечна функція C - strchr()

https://uk.wikipedia.org/wiki/String.h

char *strchr(const char *, int);    шукає символ у рядку, починаючи з голови і повертає його адресу, або NULL якщо не знайдений

Що саме тут незрозумілого? І нащо вам заміняти те, що ви не знаєте що робить?

3 Востаннє редагувалося wander (18.11.2022 11:53:20)

Re: Бібліотечна функція C - strchr()

хто я написав:

Привіт всім, з визначення з інтернету не надто розумію, що саме робить функція strchr. Хтось може пояснити або навести приклад того, як вона працює, чи має якийсь аналог, чи можна її чимось замінити?

strchr

char* strchr( const char* str, int ch );

Гугл переклад
Знаходить перше входження символу ch у рядку байтів, на який вказує str.
Кінцевий нульовий символ вважається частиною рядка, і його можна знайти за допомогою '\0'.

▼Прихований текст

Finds the first occurrence of the character ch in the byte string pointed to by str.
The terminating null character is considered to be a part of the string and can be found if searching for '\0'.

Приклад

#include <stdio.h>
#include <string.h>
 
int main(void)
{
  const char *str = "Try not. Do, or do not. There is no try.";
  char target = 'T';
  const char *result = str;
 
  while((result = strchr(result, target)) != NULL) {
    printf("Found '%c' starting at '%s'\n", target, result);
    ++result; // Increment result, otherwise we'll find target at the same location
  }
}

Output:

Found 'T' starting at 'Try not. Do, or do not. There is no try.'
Found 'T' starting at 'There is no try.'

Reference: https://en.cppreference.com/w/c/string/byte/strchr

4

Re: Бібліотечна функція C - strchr()

strchr(str, ch) повертає :

  • вказівник на перший знайдений символ ch в стрічці str, якщо стрічка str містить символ ch до першого '\0'

  • NULL, якщо стрічка str не містить символ ch до першого '\0'

▼Прихований текст
wander написав:

Finds the first occurrence of the character ch in the byte string pointed to by str.
The terminating null character is considered to be a part of the string and can be found if searching for '\0'.

.. Український форум програмістів .. (десь в темряві пустив сльозу один модератор)