C/C++之strcpy功能实现
2019独角兽企业重金招聘Python工程师标准>>>
#include <iostream>
#include<string>
using namespace std;
char* stringcpy(char* strDest,const char* strSrc)
{
if(strDest==NULL||strSrc==NULL)
throw "Invalid arguments(s)";
char* strDestCopy=strDest;
while((*strDest++=*strSrc++)!='\0');
return strDestCopy;
}
int main()
{char* src="pangao";char* dst;stringcpy(dst,src);cout<<dst<<endl;
}
这里要注意细节,注意这样就保证了最后的结束符‘\0’都被复制到dst里了,
或者stringcpy也可以表示为
char* stringcpy(char* strDest,const char* strSrc)
{
if(strDest==NULL||strSrc==NULL)
throw "Invalid arguments(s)";
int i=0;
while((strDest[i++]=*strSrc++)!='\0');
return strDest;
}
或者
char* stringcpy(char* strDest,const char* strSrc)
{
if(strDest==NULL||strSrc==NULL)
throw "Invalid arguments(s)";
int i=0;
while((strDest[i++]=strSrc[i])!='\0');
return strDest;
}
总之,数组下标或者指针后加加都表示在while条件表达式成立后再加1,相当于while(strDst[i]=strSrc[i]){++i;},仔细体会。
参考http://www.51projob.com/笔试面试题/c和c/2357
转载于:https://my.oschina.net/u/1035026/blog/224018
C/C++之strcpy功能实现相关推荐
- 第九篇,const指针,strlen,strcpy和strcmp函数的详细讲
一.今天安排. 1.const指针. 2.strlen字符串函数. 3.讲题目. 4.2点到4点. --> 自己做题目 5.4点继续讲字符串函数. 二.const指针. 1.什么是const指 ...
- 深度解析源码strcpy函数
深度解析源码strcpy函数@TOC 前言 提示:这里可以添加本文要记录的大概内容: 本文将介绍c语言中string.h中strcpy函数的源码解析 提示:以下是本篇文章正文内容,下面案例可供参考 一 ...
- C语言字符串函数大全
转载自http://www.360doc.com/content/08/0723/22/26860_1462024.shtml# C语言字符串函数大全 函数名: stpcpy 功能: 拷贝一个字符串到 ...
- LoadRunner 常用函数大全+1
1 LoadRunner 函数大全之中文解释 // button_press 函数激活指定的推按钮. int button_press ( LPCSTR button ); // button_set ...
- LoadRunner的函数全集
2019独角兽企业重金招聘Python工程师标准>>> LoadRunner 函数大全之中文解释// sapgui_table_set_column_selected 模拟用户// ...
- LoadRunner函数大全
转:http://blog.csdn.net/windone0109/article/details/4353916 1 LoadRunner 函数大全之中文解释 // button_press 函数 ...
- C语言的函数讲解(一)
文章目录 前言:什么是函数? 函数的定义 函数的组成 一.库函数是什么? 二.如何阅读库函数的文档 总结 前言:什么是函数? 函数的定义 在讲解库函数之前,首先明确一下函数的定义. 在计算机科学中,函 ...
- 【C语言进阶】带你深度剖析那些常见的字符函数(一)
前言 在C语言的学习中,C语言中对字符和字符串的处理很是频繁,所以今天本文是针对有关字符串的函数进行深度剖析,下面我会介绍函数的功能,如何使用,参数,模拟实现等方面来进行讲述,希望本文对你有所帮助. ...
- c语言字符串中的字符无效,字符串操作
字符串主要用于编程,字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的.字符串也有很多操作,在正文将对C语言.C++和java中对其操作进行介绍. 中文名 字符串操作 外文名 strin ...
最新文章
- JSP错误页面的处理和exception对象
- mysql5.6 replication_MySQL5.6 Replication主从复制(读写分离) 配置完整版
- asp.net 页面从初始化到卸载事件顺序(及对页面控件调用)完整列表【转】
- a href='?out=login'是什么意思
- 按摩椅浏览器测试浏览器可视窗口大小
- html width设置没用,html style的width不起作用
- 各 Delphi 历史版本下载合集
- 尚品汇笔记——尚硅谷
- 北理c语言乐学作业分数运算,北理乐学C语言答案-最新(12页)-原创力文档
- 门电路逻辑符号大全(三态门,同或门,异或门,或非门,与或非门, 传输门,全加器,半加器等)
- MFC入门基础(十)静态文本框()、编辑框(Edit Control)
- 产品经理vs项目经理?四类PM区别都在这里啦
- 计算机应用基础实践考核考什么,《计算机应用基础》实践性环节考核方案
- 个人app开发之找亮点
- 【vue】【开源】vue开源电商项目hello-mall嗨喽商城
- 【520表白日】程序员如何表白吗?程序员表白教程送给你!
- WMS系统数据分析—库存周转率分析
- 空号筛选接口的原理和优势
- 宜信旗下网络P2P平台宜人贷在美国纽交所上市
- Times ten内存数据库的配置
热门文章
- .Net 的 Web 项目中 关于TreeView 的 checkBox 的操作……
- 在Fedora上搭建GTK+的开发环境
- 2018.12.18
- CRLF对GIT DIFF的影响
- OpenCV图像处理(6)——轮廓标记
- html直播动画,HTML5 直播疯狂点赞动画实现代码 附源码
- tomcat和idea都占用了8080_详解IDEA 启动tomcat 端口占用原因以及解决方法( 使用debug模式)...
- 比特大爆炸为啥老显示服务器满,《有可能是史上最长停服维护公告》
- 郭慧计算机,机械制图及CAD(高等院校网络教育系列教材)
- LED液晶显示屏自动扫描测试软件特点,led显示屏控制软件自动校正是什么作用?...