C语言中的memchr

C语言中的memchr函数是一个字符串函数,它查找字符的第一次出现,并返回指向它的指针。此函数使用其第三个参数来限制搜索。memchr的基本语法如下所示。

void *memchr(const void *str, int c, size_t n);
  • str:一个有效的字符串
  • c:您想在str中搜索的值
  • n:您想在搜索对象str中搜索的字符数。

C语言memchr示例

memchr函数用于在用户指定的字符串中进行搜索。此程序将帮助您通过多个示例来理解memchr。

在使用此memchr字符串函数之前,您必须包含 #include <string.h> 头文件。

#include <stdio.h> 
#include<string.h>

int main()
{
char str[] = "C Programming Language";
char ch = 'L';
char *result;
char *result2;

result = memchr(str, ch, strlen(str));

printf("\n The Final one From %c = %s", ch, result);

result2 = memchr("Tutorial Gateway", 'G', strlen(str));

printf("\n The Final one From %c = %s", ch, result2);

return 0;
}
 The Final one From L = Language
 The Final one From L = Gateway

C语言memchr示例2

此程序允许用户输入他们的字符串和他们想查找的字符。接下来,它将使用C编程中的memchr函数,从使用指定字符开始返回字符串的一部分。

#include <stdio.h> 
#include<string.h>

int main()
{  
   	char str[40];
   	char ch;
   	char *result;
   	
   	printf("\n Please Enter any String  : ");
	gets(str);	
	
	printf("\n Please Enter any Charcater that you want to search for  : ");
	scanf("%c", &ch);
		
   	result = memchr(str, ch, strlen(str));
	
   	printf("\n The Final String From %c = %s", ch, result);
   	
	return 0;
   	
}
memchr Function Example 2

这次我们将查找不存在的字符

 Please Enter any String  : Tutorial Gateway

 Please Enter any Charcater that you want to search for  : m

 The Final String From m = (null)

尽管给定的字符存在于字符串中,但它返回的是NULL。这是因为我们将搜索限制在前5个字符内,而G不存在于前五个字符中。result = memchar(str, ch, 5)

 Please Enter any String  : Tutorial Gateway

 Please Enter any Charcater that you want to search for  : G

 The Final String From G = (null)