相关疑难解决方法(0)

为什么strchr需要一个int才能找到char?

strchrC标准库中的函数在char字符串中查找a ,但其签名需要int搜索字符.在我发现的这两个实现中,实现将其转换intchar:

char *strchr(const char *s, int c) {
    while (*s != (char)c) 
        if (!*s++)
            return 0; 
    return (char *)s; 
}

char *strchr(const char *s, int c) {  
    while (*s && *s != (char)c)
       s++;
    if (*s == c)  
      return (char *)s;
    return NULL;
}
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么?为什么不把a char作为参数呢?

c string int char

20
推荐指数
1
解决办法
5280
查看次数

标签 统计

c ×1

char ×1

int ×1

string ×1