我正在编写程序,我希望在字符串中找到匹配项。我使用strstr()
函数来完成工作,但它有一个奇怪的行为。
我使用fgets()
来读取字符串然后使用strstr()
来查找匹配项,但如果字符串与匹配项不完全相同,则它始终返回null。
例如:
>string to search match in : This is testing environment
>match : test
>returns : (null)
>string to search match in : test
>match : test
>returns : test
为什么它会以这种方式运行,我可以修复此行为吗?
答案 0 :(得分:1)
使用以下方法
char *p = strchr( match, '\n' );
if ( p ) *p = '\0';
p = strstr( source, match );