博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自定义方法实现strcpy,strlen, strcat, strcmp函数,了解及实现原理
阅读量:7095 次
发布时间:2019-06-28

本文共 1167 字,大约阅读时间需要 3 分钟。

位置计算字符串长度

//strlen()函数,当遇到'\0'时,计算结束,'\0'不计入长度之内

//字符串的拷贝

        //strcpy(字符串1,字符串2);
        //把字符串2中从一个元素到一个'\0'(包括'\0')的字符串,拷贝到字符串1(CNG字符串1的第一个元素开始)
        //注意:如果做拷贝,字符串1应该足够大,否则会越界

        //字符串的拼接

        //strcat(字符串1,字符串2)
        //把字符串2从第一个元素到第一个'\0'(包括'\0')的字符串,拼接到字符串1的第一个'\0'(从'\0'开始)后面

 

        //字符串的比较

        //strcmp(字符串1, 字符串2)
        //0:表示两个字符串相等
        //用字符串1的每一个元素和字符串2对应的元素做比较(字符串1元素的ASICC值 - 对应字符串2元素的ASICC值),当比较的结果不为0时,结束,或者当两个字符串对应的元素都

 

//自定义实现计算字符串的长度

unsigned long myStrlen(char string[])

{
    unsigned long length = 0;
    
    while (string[length] != '\0') {
        length++;
    }
    
    return length;
}
//自定义实现字符串的拷贝
void myStrcpy(char string1[], char string2[])
{
    int i = 0;
    while (string2[i] != '\0') {
        string1[i] = string2[i];
        i++;
    }
    string1[i] = '\0';
}
//自定义函数实现字符串的凭拼接
void myStrcat(char string1[], char string2[])
{
    //string1'\0'位置
    int i = 0;
    while (string1[i] != '\0') {
        i++;
    }
    
    //string2加到string1后面
    int j = 0;
    while (string2[j] != '\0') {
        string1[i++] = string2[j++];
    }

//不要忘记在最后添加\0

    string1[i] = '\0';
}
//自定义函数实现字符串的比较
int myStrcmp(char string1[], char string2[])
{
    int i = 0;
    while (string1[i] == string2[i] && string1[i] != '\0') {
        i++;
    }
    
    return string1[i] - string2[i];
}

 
 

转载于:https://www.cnblogs.com/tian-sun/p/4307519.html

你可能感兴趣的文章
Android之代码创建布局
查看>>
xss实例-输出在<script></script>之间的情况
查看>>
Jquery操作table
查看>>
高并发处理案例
查看>>
在matlab中clear,clc,clf,hold作用介绍
查看>>
[物理学与PDEs]第1章习题8 磁场分布 $\ra$ 电流分布
查看>>
技术书单整理
查看>>
c语言开源项目--SQLite学习资料总结
查看>>
Repeater控件
查看>>
JS模板引擎
查看>>
JavaScript之表单验证讲解
查看>>
MSMQ 消息队列
查看>>
java核心知识点学习----多线程并发之线程同步
查看>>
JSP编程中常用的JavaScript技术(转载)
查看>>
jquery easy ui 学习 (5) windowlayout
查看>>
delegate和protocol
查看>>
DevExpress Report的简单应用
查看>>
Spring AOP Schema aop:config、tx:advice
查看>>
Linux 驱动加载到内核中编译<1>
查看>>
MyBatis-Spring 使用总结
查看>>