memmem.c

来自「simple MIPS EJTAG u-boot loader」· C语言 代码 · 共 27 行

C
27
字号
/***  MEMMEM.C - A strstr() work-alike for non-text buffers****  public domain by Bob Stout****  Warning: The memchr() in Borland C/C++ versions *prior* to 4.x is broken!** **  Fixed by Thomas Sailer*/#include <string.h>void *memmem(const void *buf, size_t buflen, const void *pattern, size_t len){	char *bf = (char *)buf, *pt = (char *)pattern, *p = bf;	while (len <= (buflen - (p - bf))) {		if (NULL != (p = memchr(p, (int)(*pt), buflen - (p - bf) - len + 1))) {			if (!memcmp(p, pattern, len))				return p;			else  ++p;		} else			break;	}	return NULL;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?