C/C++中strlen(),strcpy(),strcat()以及strcmp()的代码实现--学习笔记
以下代码是自己学习过程中通过借鉴加上自己的理解编写出的代码已经在VC++2008版本上调试通过,主函数因为很简单所以没有附上。
1. strlen()
int my_strlen(char *str)
{
int i=0;
while(str[i])
{
//if(((str[i])>65)&&((str[i])<122) //可以按照ASCII码设置对字母还是数字的统计
i++;
//continue;
}
return i;
}
2. strcpy()
char *my_strcpy(char *str1,char *str2)
{
if ((str1==NULL)||(str2==NULL))
cout<<"invalid argument"<<endl;
char *str=str2;
while( (*str++=*str1++)!='/0');
return str2;
}
3. strcat()
char *my_strcat(char *str1,char *str2)
{
assert(*str1!=NULL);//设置断言检查参数合法性
assert(*str2!=NULL);
char *temp=str1;
while(*temp)
*temp++;
while((*temp++=*str2++)!='/0');
return str1;
}
4. strcmp()
int my_strcmp(char *s1,char *s2)
{
int result=0;
int c;
while(*s1||*s2) //如果S1和S2比较完毕 (‘/0’)跳出循环;
{
c=*s1-*s2;
s1++;s2++;
if(c>0) //判断S1和S2对应的字符是否不同,如果S1的大于S2对应的字符,返回1,小于返回-1,相等返回0;
{
result=1;
break;
}
else
if(c<0)
{
result=-1;
break;
}
}
return result;
}
C/C++中strlen(),strcpy(),strcat()以及strcmp()的代码实现--学习笔记相关推荐
- 第86讲:Scala中For表达式的生成器、定义和过滤器学习笔记
第86讲:Scala中For表达式的生成器.定义和过滤器学习笔记 for表达式的生成器定义和过滤和角度讲解for的内容 for表达式中生成器定义和过滤是非常重要的内容. object ForInact ...
- 缓存区的输入输出,字符串常用操作,实现strlen/strcpy/strcat/strcmp函数)
输出缓冲区: 程序输入的数据并不能立即显示在屏幕上,而是先存储在输出缓冲区中,满足一些条件后才显示出来. 1.遇到\n后 2.遇到输入语句 3.当输出缓冲区满4K 4.当程序结束 5.手动刷新 ffl ...
- Golang中WaitGroup、Context、goroutine定时器及超时学习笔记
原文连接:http://targetliu.com/2017/5/2... 好久没有发过文章了 - -||,今天发一篇 golang 中 goroutine 相关的学习笔记吧,以示例为主. WaitG ...
- C++字符串操作函数strstr,strcmp,strlen,strcpy,strcat,strok
C++中字符串操作函数非常常见,下面是一些常用的str相关操作函数: strstr strstr: 在字符串中查找子字符串 C++ const char* strstr(const char* str ...
- strlen,strcpy,strcat,strcmp函数
1.strlen函数 strlen函数的作用是计算给定字符串的长度,从内存的某个位置开始,遇到第一个'\0'结束. 使用样例: int main() {const char *ar = "a ...
- c语言strcpy两字符串长度不同,(C语言)自己写字符串操作函数(一)——strlen/strcpy/strcat/strcmp/st...
看到很多面试都会要求你写一些简单的字符串操作函数,这些函数看起来挺简单的,但是自己写的时候就会发现不少的问题.所以我自己把大部分的字符串操作函数都写了一遍,然后用了个测试程序来测试自己写的函数与库函数 ...
- C语言strlen,strcpy ,strcat, strcmp,strstr常用库函数的理解与模拟实现
前言 本篇文章主要学习一下常见的库函数和模拟实现这些库函数,这篇文章可以加深我们对这些函数的理解. 一.strlen 这个函数是用来求字符串长度的,实现逻辑是: '\0' 作为字符串的结束标志,str ...
- 《C语言杂记》理解字符串处理函数 strlen() strcpy() strcat() strcmp()
在linux C 编程中,我们经常遇到字符串的处理,最多的就是字符串的长度.拷贝字符串.比较字符串等:当然现在的C库中为我们提供了很多字符串处理函数.熟练的运用这些函数,可以减少编程工作量,这里介绍几 ...
- 用子函数实现strlen.strcpy.strcat.strcmp(完整代码)
strlen思路 循环遍历数组(字符串),直至第i位等于尾零'\0',循环结束:定义一个变量 在循环内自加 strcat思路 循环遍历第一个字符串,找到末尾,'\0'的位置,然后将第二个字符串,从头开 ...
最新文章
- java中创建窗口用的什么_JAVA 窗口的创建
- xp环境下 .net framework 3.5 安装过程过慢 原因浅析
- (11)System Verilog对象复制
- 【Elasticsearch】 es 索引 内置 字段 _source
- 性能测试——loadrunner_添加多个主机发送请求
- 从分析性数据库ADS中导出数据
- 路由器服务器账号密码,路由器上网账号密码设置的一般步骤介绍
- html中内部css样式怎么写,HTMLCSS基础-内联样式和内部样式表
- 使用SQL语句在K3里进行反结帐- -
- 计算机专业职称入深户,深圳市人才引进入深户新政策
- wordpress 数据库_如何一键优化您的WordPress数据库
- 卡西欧科学计算机使用方法,卡西欧计算器使用说明
- 现在网络安全员工资一般多少(网络安全员平均工资)
- SpringBoot-RSA加密
- 如何解决MySql报错:only_full_groupBy
- php API接口最基本的写法
- AspectJ 学习笔记
- 操作系统第二章进程的描述与控制
- C语言算三角形外心坐标,【c语言】三角形外心坐标
- 【刘汝佳】习题3-1 UVA1585
热门文章
- 开启Mac充电提示音
- 工具用途_机械加工中研磨加工刀具(砂轮)﹑治工具及其用途
- java实现stack search_Java Stack search()用法及代码示例
- python 调用函数 开销_减少python中的函数调用开销
- sql 分号变成多行_SQL(2)
- 5分钟就能完成的5个Python小项目,赶紧拿去练习吧
- LINUX系统中进程如何管理控制(一)
- Dos一键清理系统垃圾教程
- 如何使用Fiddler抓包操作?
- 【Unity】修改UGUI Minimap(2.2.5)的显示范围(min,max)