Descrição
A função da biblioteca C void *memchr(const void *str, int c, size_t n) procura pela primeira ocorrência do personagem c (um caracter não assinado) no primeiro n bytes da string apontada, pelo argumento str.
Declaração
A seguir está a declaração da função memchr ().
void *memchr(const void *str, int c, size_t n)
Parâmetros
str - Este é o indicador para o bloco de memória onde a pesquisa é realizada.
c - Este é o valor a ser passado como um int, mas a função executa uma pesquisa byte por byte usando a conversão unsigned char desse valor.
n - Este é o número de bytes a serem analisados.
Valor de retorno
Esta função retorna um ponteiro para o byte correspondente ou NULL se o caractere não ocorrer na área de memória fornecida.
Exemplo
O exemplo a seguir mostra o uso da função memchr ().
#include <stdio.h>
#include <string.h>
int main () {
const char str[] = "http://www.tutorialspoint.com";
const char ch = '.';
char *ret;
ret = memchr(str, ch, strlen(str));
printf("String after |%c| is - |%s|\n", ch, ret);
return(0);
}
Vamos compilar e executar o programa acima que produzirá o seguinte resultado -
String after |.| is - |.tutorialspoint.com|