c++实现strcat字符串连接库函数的方法详解

原型
  extern char *strcat(char *dest,char *src);
用法
  #include <string.h>
功能
  把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。
说明
  src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。   
  返回指向dest的指针。
举例
   char str4[] = "Hello world";
   char str5[] = "Hello World";
   cout << strcat(str4,str5) << endl;
会出错,因为str4没有足够的空间
下面是我自己的一个实现,不足之处,还望指正!!!


代码如下:

#include "stdafx.h"
#include <iostream>
#include <assert.h>
using namespace std;
//连接字符串
char* mystrcat(char* destStr,const char* srcStr)  //如果两个字符串是同一个字符串呢?
{
 assert(destStr != NULL && srcStr != NULL);
 char* temp=destStr;
 while(*destStr != '\0')
 {
  ++destStr;
 }
 while(*destStr++ = *srcStr++)
  NULL;
 return temp; //为了实现链式操作,将目的地址返回
}
int _tmain(int argc, _TCHAR* argv[])
{
 char str1[25] = "Hello world";
 char str2[] = "Hello World";
 cout << mystrcat(str1,str2) << endl;
 return 0;
}

(0)

相关推荐

  • c++ 连接两个字符串实现代码 实现类似strcat功能

    复制代码 代码如下: #include "stdafx.h" #include<iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { char s1[60]="kingbaby"; char *s2="hello"; int i=0;int j=0; while(s1[i]!='\0')i++; while((s1[i]=s2[j])!='\0'){

  • C语言中字符串常用函数strcat与strcpy的用法介绍

    strcpy原型声明:extern char *strcpy(char* dest, const char *src);头文件:#include <string.h>功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串.返回指向dest的指针.函数实现: 复制代码 代码如下: /********************** * C语言标准库函数strcpy的一种典型的工业级的

  • strcat 函数的使用指南

    原型       extern char *strcat(char *dest,char *src); 用法       #include <string.h> 功能       把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'.返回指向dest的指针. 说明         src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 举例 char str4[] = "Hello world"; char s

  • strcat函数与strncat函数的深入分析

    函数原型:extern char *strcat(char *dest,char *src) 参数说明:dest为一个目的字符串的指针,即被连接的字符串(在前),src为一个源字符串的指针(在后).所在库名:#include <string.h>函数功能:把src所指字符串添加到dest结尾处实现字符串的连接,连接过程覆盖dest结尾处的'/0'.返回说明:src和dest所指内存区域不可以重叠,并且dest必须有足够的空间来容纳src的字符串返回指向dest的指针.其它说明:暂时无.实例:

  • strcat函数实现简单示例

    代码功能是把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0' 复制代码 代码如下: char* strcat(char* strDest, const char* strSrc){   char *rem = strDest;   while(*strDest) strDest++; while(*strSrc!='\0'){*strDest++=*strSrc++;} *strDest='\0';   return rem;}

  • c++实现strcat字符串连接库函数的方法详解

    原型 extern char *strcat(char *dest,char *src); 用法 #include <string.h> 功能 把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'. 说明 src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针. 举例  char str4[] = "Hello world";  char str5[] = "Hello Wor

  • 关于php几种字符串连接的效率比较(详解)

    php大致有三种字符串连接: 1.直接用.来进行连接. 2.用.=进行连接. 3.先压入数组,再通过join函数连接. 下面分别对这三种方法的效率进行测试: 第一种方法代码如下: <?php function get_tm() { list ( $usec, $sec ) = explode ( " ", microtime () ); return (( float ) $usec + ( float ) $sec); } $temp="test"; $re

  • C#中截取字符串的的基本方法详解

    分享几个经常用到的字符串的截取 string str="123abc456"; int i=3; 1 取字符串的前i个字符 str=str.Substring(0,i); // orstr=str.Remove(i,str.Length-i); 2 去掉字符串的前i个字符: str=str.Remove(0,i); // or str=str.Substring(i); 3 从右边开始取i个字符: str=str.Substring(str.Length-i); // or str=s

  • C#实现文件与字符串互转的方法详解

    目录 实现功能 开发环境 实现代码 实现效果 嗯,就是BASE64,不用多想,本来计划是要跟上一篇字符串压缩一起写的,用来实现将一个文件可以用json或者text等方式进行接口之间的传输,为了保证传输效率,所以对生成的字符串进行进一步压缩.但是由于不能上传完整源代码,所以就还是分开写了,方便展示实现效果以及功能的单独使用. 实现功能 将文件与为字符串互转 开发环境 开发工具: Visual Studio 2013 .NET Framework版本:4.5 实现代码 //选择文件路径 privat

  • Pandas实现两个表的连接功能的方法详解

    目录 准备数据 先导入模块 输出内容 连接 内连接 外连接 左连接 右连接 上次介绍了pandas的多条件筛选,这些都是一些数据处理的必要技能,也不贪多,咱们每次学习一点. 这次咱们说说pandas的两个表的连接技能merge,也就是根据一个表的条件去匹配另一个表的内容. 话不多说,直接正文. 准备数据 先导入模块 import pandas as pd df1 = pd.DataFrame({     '姓名': ['张三', '李四', '王五', '刘六', '齐四'],     '号码'

  • node.js连接mongoose数据库方法详解

    目录 创建项目命令 连接mongoose数据库 配置跨域 运行 创建项目命令 express --view ejs 项目名 进入项目,我们需要npm i 下载配置文件 有时候会出先端口已经被占用的情况,我们可以在bin目录下www文件中修改端口 连接mongoose数据库 我们创建一个新的文件夹,然后在文件夹下创建一个连接mongoose数据库的文件,代码如下 var mongoose=require('mongoose') mongoose.connect('mongodb://127.0.0

  • Python连接SQLServer2000的方法详解

    本文实例讲述了Python连接SQLServer2000的方法.分享给大家供大家参考,具体如下: http://pymssql.sourceforge.net/  介绍PYTHON 连接MSSQL的好地址的哦! Python好的一个方法就是能够在网上找到很多现成的模块然后直接下载拿过来用就可以了.具体快速开发的一个原因也就是这个了.现在就是主要来研究一个pymssql这个模块的操作功能了! 可以安装之后直接查询帮助文档进行查看到这个模块的一些功能帮助文档. 1.一个解决乱码问题的方法: s.de

  • Python实现字符串格式化输出的方法详解

    本文实例讲述了Python实现字符串格式化输出的方法.分享给大家供大家参考,具体如下: python属于强类型的语言,如果像java一样操作字符串和数字的"+"时,会出现TypeError.而python的格式化方法有多种,比如使用占位符,使用format,或者是自定义模版等等.这里介绍了其中的几种方法 下面这个例子很好的说明了python属于强类型语言: print "abc" + 123 Traceback (most recent call last): Fi

  • Java去除字符串中空格的方法详解

    昨天写了一个关于Excel文件处理的脚本,在字符串匹配功能上总是出现多余不正确的匹配,debug调试之后,发现一个坑. ------->代码中字符串使用了replaceAll()方法,去除了所有空格(其中包括:首尾空格.中间空格) 遂整理下java关于字符串去除空格的方法. 1.方法分类 str.trim(); //去掉首尾空格 str.replace(" ",""); //去除所有空格,包括首尾.中间 str.replaceAll(" "

  • JS截取字符串的三种方法详解

    JS提供三个截取字符串的方法,分别是:slice(),substring()和substr(),它们都可以接受一个或两个参数: var stmp = "rcinn.cn"; 使用一个参数 alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn" alert(stmp.substring(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn" 使用两个参数 alert(stmp.slice(1

随机推荐