• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > strcat 函数的使用指南

strcat 函数的使用指南

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了strcat函数,strcat函数用法,matlab strcat函数,matlab中strcat函数,strcat函数实现等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

原型        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 str5[] = "Hello World";
 cout << strcat(str4,str5) << endl;
</div>

会出错,因为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;
}


</div>

我们再来看下源函数:

//=======================================================
#include "string.h"
char * __cdecl strcat ( char * dst, const char * src )
{
  char * cp = dst;     //保存dst指针
  while( *cp )
    cp++;         //查找dst字符串的末尾
  while( *cp++ = *src++ ) ; //拷贝src字符串到dst后面
  return( dst );      //返回dst字符串指针
}
//=============================================
</div>

举例:

//=================================================
strcat()接受两个字符串参数。将第二个字符串的一份拷贝添加到第一个字符串的结尾,从而使第一个字符串成为一个新的组合字符串,第二个字符串不改变。
#include<stdio.h>
#include<string.h>
int main(void)
{
  char str1[20];
  char str2[]="Hello word";
  
  gets(str1);   // 必须初始化
  strcat(str1,str2);
  puts(str2);
  puts(str1);
  
  getchar();
  return 0;
}
</div>

以上程序将string2字符串的拷贝到string1的结尾。第一个字符串成为一个新的组合字符串

注意: 在strcat()函数调用string1之前,string1必须初始化。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • strcat 函数的使用指南
  • strcat函数实现简单示例
  • C语言中字符串常用函数strcat与strcpy的用法介绍
  • strcat函数与strncat函数的深入分析

相关文章

  • 2017-05-28概率的问题:使用递归与多次试验模拟的分析
  • 2017-05-28linux c模拟ls命令详解
  • 2017-05-28strncpy与snprintf 的用法比较
  • 2017-05-28利用boost获取时间并格式化的方法
  • 2017-05-28C++中基本的输入输出函数使用指南
  • 2017-05-28C++多态的实现机制深入理解
  • 2017-05-28C语言开发之归并排序详解及实例
  • 2017-05-28C++中可正确获取UTF-8字符长度的函数分享
  • 2017-05-28C++简单输出钻石菱形图效果
  • 2017-05-28浅析iterator与指针的区别

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 基于欧几里德算法的使用
    • 基于select、poll、epoll的区别详解
    • Objective-C的内省(Introspection)用法小结
    • C实现与 uint64_t 相同功能的类
    • 模拟鼠标事件的实现思路及代码
    • 快速解决boost库链接出错的问题(分享)
    • c++ 巧开平方的实现代码
    • 关于C++使用指针 堆和栈的区别分析
    • C++ 关于MFC多线程编程的注意事项
    • C++运算符重载规则详解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有