我正在尝试使用 strstr 在一行中搜索两个不同的字符串。
sBuffer = "This is app test"
s1= strstr (sBuffer, "This");
s2= strstr (sBuffer, "test");
printf("%s\n", s1); //prints - This is app test
printf("%s\n", s2); //prints - test
if (s1 && s2)
//do something
s1 的预期输出应该是字符串"This"
,但它正在打印 s1 的整个字符串。
但是 s2 打印正确。
任何帮助表示赞赏。
编辑:虽然所有答案都是正确的(赞成所有答案),但我接受了 dasblinkenlight 的答案。这是因为我意识到检查如下所示的布尔条件就可以满足我的要求。感谢所有的答案。
if ( (strstr (sBuffer, "This")) && (strstr (sBuffer, "test")) )
//do something