测试C中字符串中是否存在字符

Pra*_*kar 1 c

这有什么问题?

#include <stdio.h>

void main(){
    char *s="some text";
    printf("%d",is_in(s,'t'));

}

int is_in(char *s, char c){
    while(*s){
        if(*s==c) return 1;
        s++;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我在GCC中遇到以下编译时错误:

test.c:9:错误:'is_in'的冲突类型

test.c:9:注意:具有默认促销的参数类型不能与空参数名称列表声明匹配

test.c:5:注意:'is_in'之前的隐式声明就在这里

Bil*_*ler 6

你试过将is_in函数放在main之上吗?

  • C中的函数需要在使用之前声明:http://en.wikipedia.org/wiki/Function_prototype (3认同)