c语言比较字符串是否相等怎么求呢?

我有一个string的s内容是“m”,我想判断s是否是“a”或者“b”,是的话返回true,不是返回false。
我写的是
if(s==“a”||“b”)
{return true}else{return false

为什么最后结果是true呢?还有别的办法吗

if(s=="a"||s=="b")

使用if(strcmp(a,b)==0)来判断,一个函数判断字符串是否相等