昨天在实现strcasestr中用到了tolower函数,这个函数很简单,一看就知道怎么实现。

头文件:#include <ctype.h> 之前以为在stdio.h头文件里面。
定义函数:int tolower(int c);
函数说明:若参数 c 为大写字母则将该对应的小写字母返回。
返回值:返回转换后的小写字母, 若不须转换则将参数c 值返回。

函数测试:

#include<stdio.h>
#include<string.h>
int mytolower(int c){
    if('A'<=c && 'Z'>=c)
        return c-32;
    return c;
}
int mytolower2(int c){
    if('A'<=c && 'Z'>=c)
        return c-('Z'-'A');
    return c;
}
int main(){
    char s1[] = "3489 #$!@$# ASDFDF adfdf +-*/";
    int i=0;
    for(;i<strlen(s1);i++){
        s1[i] = mytolower2(s1[i]);
    }
    printf("s1=%s",s1);
    return 0;
}


参考资料:

http://www.ok2002.com/cc/html/749gu0jejoh03bonsl1d7m_d5ylcq1wy3g9izm5ep.s.bttiuxwxv4q8a2kkhf-v.html

http://see.xidian.edu.cn/cpp/html/132.html

http://www.jbox.dk/sanos/source/lib/ctype.c.html