C语言返回exist

C语言编写函数时如何使其返回exist
(例如编写一个函数实现查找字符串中是否包含指定的子串。若存在该子串则返回exist。若不存在则返回NULL。)


char* find_substring(char* str, char* sub) {
    // 在str中查找sub
    // ...
    if (找到sub) {
        return "exist";
    } else {
        return NULL;
    }
}

可以使用C语言中的指针类型来实现这个需求。可以在函数中使用字符串函数strstr来查找子串,如果找到该子串,返回指向子串位置的指针,如果没有找到,则返回NULL。示例代码如下:

#include <string.h>

const char* find_substring(const char* str, const char* sub) {
    return strstr(str, sub);
}

int main() {
    char str[] = "hello world";
    char* result = find_substring(str, "world");
    if (result != NULL) {
        printf("exist\n");
    } else {
        printf("NULL\n");
    }
    return 0;
}