字符串自实现(一)(mystrcpy,mystrcat,mystrcmp)
char* mystrcpy(char* str_one,const char* str_two)
{
char* tmp = str_one;
while (*str_one++ = *str_two++)return tmp;
}
char* mystrcat(char* str_one,const char* str_two)
{
char* tmp = str_one;
while (*str_one)str_one++;
while (*str_one++ = *str_two++)return tmp;
} //1-7为逐渐优化过程
int mystrcmp1(const char* str_one,const char* str_two)
{
while (*str_one != '\0'&&*str_two != '\0')
{
if (*str_one > *str_two)
{
return 1;
}
else if (*str_one < *str_two)
{
return -1;
}
else
{
str_one++;
str_two++;
}
}
if (*str_one != '\0'&&*str_two == '\0')
{
return 1;
}
else if (*str_one == '\0'&&*str_two != '\0')
{
return -1;
}
else
{
return 0;
}
} int mystrcmp2(const char* str_one, const char* str_two)
{
while (*str_one != '\0'&&*str_two != '\0')
{
if (*str_one != *str_two)
{
return *str_one - *str_two;
}
else
{
str_one++;
str_two++;
}
}
return *str_one - *str_two;
} int mystrcmp3(const char* str_one, const char* str_two)
{
while (*str_one != '\0'&&*str_two != '\0')
{
if (*str_one != *str_two)
{
break;
}
else
{
str_one++;
str_two++;
}
}
return *str_one - *str_two;
} int mystrcmp4(const char* str_one, const char* str_two)
{
for (;*str_one != '\0'&&*str_two != '\0';str_one++,str_two++)
{
if (*str_one != *str_two)
{
break;
}
}
return *str_one - *str_two;
} int mystrcmp5(const char* str_one, const char* str_two)
{
for (; *str_one&&*str_two; str_one++, str_two++)
if (*str_one != *str_two)
break;
return *str_one - *str_two;
} int mystrcmp6(const char* str_one, const char* str_two)
{
for (; (*str_one&&*str_two) && (*str_one == *str_two); str_one++, str_two++);
return *str_one - *str_two;
} int mystrcmp7(const char* str_one, const char* str_two)
{
for (; (*str_one&&*str_two) && (*str_one++ == *str_two++););
return *str_one - *str_two;
}
字符串自实现(一)(mystrcpy,mystrcat,mystrcmp)的更多相关文章
- [c/c++] programming之路(22)、字符串(三)——字符串封装
项目结构 头文件.h #include<stdio.h> #include<stdlib.h> #include<string.h> //字符串封装,需要库函数 / ...
- C语言程序设计(十) 字符串
第十章 字符串 字符串常量是由一对双引号括起来的一个字符串序列 字符串实际就是由若干个有效数字构成且以字符'\0'作为结束的一个字符序列 C语言没有提供字符串数据类型,因此字符串的存取要用字符型数组来 ...
- 自定义方法实现strcpy,strlen, strcat, strcmp函数,了解及实现原理
位置计算字符串长度 //strlen()函数,当遇到'\0'时,计算结束,'\0'不计入长度之内 //字符串的拷贝 //strcpy(字符串1,字符串2); //把字符串2 ...
- 自己实现C++的string类
使用C++的朋友对string类都不会陌生,string类使用起来很是方便,比C的字符数组好用多了,但是我们能不能自己实现一个属于自己的string类呢? 实现一个具有基本功能的string类并不难, ...
- 1. C/C++项目一
需求: 使用C语言封装string 字符串,实现字符串的增.删.改.查等API函数. 要求: 不能使用 string 库函数,所有库函数必须自己手动实现. [项目实现] myString.h 代码如下 ...
- typedef的使用2——定义函数
#include <stdio.h> #include <string.h> #pragma warning(disable:4996) //闲言碎语都先不要讲了,直接上函数吧 ...
- 睡不着,复习一下C++基础中的基础(深拷贝与浅拷贝)
#include <iostream> #include <string> #include <assert.h> using namespace std; //声 ...
- C语言学习第八章
今天开始学习字符串,学完以后最低要做到了解什么是字符串,以及字符串的一些应用方法,毕竟字符串还是很常见的. 简单的字符串"helloworld",这个字符串大家应该都很眼熟,学编程 ...
- c 跟字符串有关的函数
1.字符串查找 strstr char * strstr(const char *s1, const char *s2); 在s1中查找s2,如果找到返回首个s2的首地址 char * strcase ...
随机推荐
- SpringBoot基础篇(一)
1.前言 什么是SpringBoot:springboot是当下一套流行的J2EE框架.借助微服务的思想.将业务分成一个个的服务.通过spring-cloud进行整合.最后通过spring-data进 ...
- libuv解析
note libuv解析
- windows10 下使用 spdlog 总结(spdlog 1.7)
!!版权声明:本文为博主原创文章,版权归原文作者和博客园共有,谢绝任何形式的 转载!! 作者:mohist 注意: 请选择对c++11 支持 完善的编译器, 为什么vs2013不行,因为: spdlo ...
- 【LeetCode】339. Nested List Weight Sum 解题报告(C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 dfs 日期 题目地址:https://leetcod ...
- PowerDotNet平台化软件架构设计与实现系列(10):文件平台
很多业务系统少不了需要进行文件管理,比如各种图片.excel.pdf.压缩包等等,为了高度可复用,我们抽象出文件平台,加强对文件进行管理. PowerDotNet文件平台目前支持阿里云OSS.Fast ...
- idea解决springboot项目中log4j漏洞升级问题
最近阿里云团队发现log4j漏洞,危险级别:严重,相关资讯 https://m.sohu.com/coo/hsdt/506958086_355140 https://www.sohu.com/a/50 ...
- [C++]使用vector描述线性表定义及基本操作
#ifndef VECTORLIST_H #define VECTORLIST_H #include<iostream> #include"linearlist.h" ...
- SROP
先放个例题吧,原理后面有时间再更:BUUCTF ciscn_2019_s_3 保护只开了nx 1 signed __int64 vuln() 2 { 3 signed __int64 v0; // r ...
- 使用 JavaScript自定义函数计算出教室的体积大小,其中教室的长、宽、高分别为 8 米、5 米、3 米
查看本章节 查看作业目录 需求说明: 使用 JavaScript自定义函数计算出教室的体积大小,其中教室的长.宽.高分别为 8 米.5 米.3 米 实现思路: 创建 HTML 页面 在页面的 < ...
- gPRC基本介绍
1.说明 gRPC英文全名为Google Remote Procedure Call, 即Google远程过程调用, 是Google发布的一个高性能.通用的开源RPC框架, 2.gRPC定义 gRPC ...