Ben*_*Ben 4 c++ string constants char
我有一个 const char* 变量,我想检查它是否以某个字符串开头。
例如:
string sentence = "Hello, world!";
string other = "Hello";
const char* c = sentence.c_str();
if(/*"c" begins with "other"*/)
{
//Do something
}
Run Code Online (Sandbox Code Playgroud)
我如何使用 if 语句来做到这一点?
小智 5
您可以使用 c 函数strstr(string1, string2),该函数返回指向 string1 中第一次出现 string2 的指针。如果返回的指针指向 string1,则 string1 以您要匹配的内容开头。
const char* str1 = "Hello World";
const char* ptr = strstr(str1, "Hello");
// -----
if(str1 == ptr)
puts("Found");
Run Code Online (Sandbox Code Playgroud)
请记住,您的其他变量将需要在 strstr 函数的上下文中使用它的 .c_str() 方法。