2009-11-22 122 views
1

我想在C中编写一个字符串例程,而且我一直在打同一个问题。字符串比较 - C

在C,我有这个字符串:

MAMAAMAAALJ 

如果我有这个字符串:

AAA 

我怎么能确定是AAA MAMAAMAAAJ里面?

回答

5

许多C运行时库包含功能strstr (const char *s1, const char *s2)

如果s2在s1内,它会将s1内的指针返回到子串的开头,否则返回NULL。

+0

*所有*符合托管实现C提供'strstr'。 – caf 2009-11-22 21:50:46

+0

有多少'C'实现符合?根据我的经验,少数几个有这个功能的其他名称,有些不提供太接近的功能。 – wallyk 2009-11-23 01:20:12

+0

我认为几乎每个通用C编译器都支持'strstr'。很多环境还在''中包含了POSIX标准的'索引'功能,但ANSI C肯定更广泛。 – intgr 2009-11-24 11:08:46

1
strstr("MAMAAMAAAJ", "AAA"); 

返回指针到搜索字符串的发生,或NULL如果没有找到

1

Boyer-Moore字符串搜索算法


C realization

+2

我不知道是投票还是投票,所以我不会投票。 – 2009-11-22 07:33:48

+0

BM用于非常短的弦,im与stefan相同。 – kar 2009-11-23 10:12:48