The memchr () function in C

The function void * memchr (const void * str, int c, size_t n) looks for the first occurrence of the character c (an unsigned char) in the first n bytes of the string pointed to by parameter str.

The function void * memchr (const void * str, int c, size_t n) looks for the first occurrence of the character c (an unsigned char) in the first n bytes of the string pointed to by parameter str.

Declaring the function memchr () in C

Below is the declaration for memchr () in C:

 void * memchr ( const void * str , int  c , size_t  n ) 

Parameters

str - This is the pointer to the memory block where the search is performed.

c - This is the value to be transmitted in the form of an int, but the function performs a byte search using the unsigned char conversion of this value.

n - This is the number of bytes to be analyzed.

Returns the value

This function returns a pointer to the connected byte or NULL if the character does not appear in the given memory area.

For example

The following program C illustrates the usage of memchr () in C:

 #include #include int  main  () { char *  pch ; char  str [] = "Hoc C co ban va nang cao tai QTM" ;  pch  = ( char *)  memchr  ( str , 'v' ,  strlen ( str )); if ( pch != NULL )  printf  ( "Tim thay 'v' tai vi tri %d.n" ,  pch - str + 1 ); else  printf  ( "Khong tim thay ky tu 'v'.n" ); return 0 ; } 

Compiling and running the above C program will result:

images 1 of The memchr () function in C
Images 1 of The memchr () function in C

According to Tutorialspoint

Last lesson: string.h in C

Next lesson: Function memcmp () in C

5 | 1 Vote
« PREV : The function memcmp...
string.h in C... : NEXT »