char指针和IF语句

Ari*_*ies 1 c pointers if-statement

我有一个从函数返回的char指针,我想使用IF语句仔细检查它的值我应该如何在C中实现这个.

substring函数来自这里

我想要这样的东西

if (substring("xxxNameYYY",0,3)=="xxx"){
     //do this
} else {
     //do that
}
Run Code Online (Sandbox Code Playgroud)

以上if语句总是去"做那个"部分.

谢谢

Con*_*ius 8

您无法比较C中的字符串,您必须使用它strcmp(str1, str2) == 0来检查它们是否相等.

在你的情况下:

char * substr = substring("xxxNameYYY",0,3);
if (strcmp(substr, "xxx") == 0) {
    /* TODO */
}
else {
    /* TODO */
}
Run Code Online (Sandbox Code Playgroud)