C++ switch语句中的strstr

C++ switch语句中的strstr,c++,switch-statement,strstr,C++,Switch Statement,Strstr,我正在制作一个程序,让用户输入一个字符串,然后程序使用strstr函数搜索字符串中的各种单词,然后根据找到的单词调用不同的函数。我决定使用switch语句检查出现的单词。我制作了一个原型程序,如下所示: int main() { char str[] = "This is a string."; char str1[] = "is"; int num = strstr(str, str1); switch(num) { case 0:

我正在制作一个程序,让用户输入一个字符串,然后程序使用
strstr
函数搜索字符串中的各种单词,然后根据找到的单词调用不同的函数。我决定使用switch语句检查出现的单词。我制作了一个原型程序,如下所示:

int main() {
    char str[] = "This is a string.";
    char str1[] = "is";
    int num = strstr(str, str1);

    switch(num) {
        case 0:
            cout<<"Str1 is present";
            break;
        case -1:
            cout<<"str1 is absent";
            break;
    }
}
intmain(){
char str[]=“这是一个字符串。”;
字符str1[]=“是”;
int num=strstrstr(str,str1);
开关(num){
案例0:

cout
strstr
返回一个
char*
const char*

读一读

char str1=“这是一个字符串。”;
char str2=“is”;
字符*结果=strstr(str1,str2);
如果(结果==NULL)
{

失败时不能
strstr
返回
NULL
?只需检查
if(num)
总之,你做错的是你没有RTFM。一个好的避免方法是,在有问题的项目中,添加手动参考链接,例如一个好的google点击。那么我如何将它与switch语句一起使用呢?只有两个条件,为什么你需要switch语句。我说这只是一个原型,在实际的程序t中这里有几个条件。如果我使用strstr搜索is和string,那么switch语句中的语法是什么?@hyde switch只对char或int有效。char*将导致错误。@ShashwatKumar Ahm,你说得对,C switch不允许指针。因此,这不仅是一种不好的做法,而且不会编译:)
char str1 = "This is a string.";
char str2 = "is";
char* result = strstr(str1, str2);
if (result == NULL)
{
    cout<<"str1 is absent";
}
// etc