C语言实现字符串拼接和拷贝

作者:SCAU_Jimmy 时间:2021-06-07 14:50:09 

本文实例为大家分享了C语言实现字符串拼接和拷贝的具体代码,供大家参考,具体内容如下

字符串拼接:


#include<stdio.h>
#include<stdlib.h>
#include<string.h>

char *str_contact(const char *,const char *);

char *str_contact(const char *str1,const char *str2)
{
char *result = (char*) malloc(strlen(str1) + strlen(str2) + 1);
if(!result)
{
 printf("Error: malloc failed in concat! \n");
 exit(EXIT_FAILURE);
}

char *temp = result;
while(*str1 != '\0')
{
 *result++ = *str1++;
}

while((*result++ = *str2) != '\0')
{
 ;
}

return temp;
}

int main(void)
{
char *ch1 = "string_";
char * ch2 = "_contact";
char *result = NULL;
result = str_contact(ch1,ch2);
print("result = %s\n",result);
free(result);
result = NULL;
return 0;
}

字符串拷贝:


#include<stdio.h>
#include<stdlib.h>
#include<string.h>

char *strcpy(char *dst,const char *src)
{
assert(*dst != NULL && *src!=NULL);
char *temp = dst;
while(*src!='\0')
{
*dst++ = *src++;
}
*dst = '\0';

return temp;
}

int main(void)
{
char *ch1 = "str_cpy";
char *ch2;
char *result = strcpy(ch2,ch1);
printf("result = %s\n",result);
free(result);
result = NULL;
return 0;
}

小编再为大家分享一段之前收藏的代码,感谢原作者的分享。

C++字符串拼接功能描述:实现在字符串末尾拼接字符串


#include <iostream>
#include <string>
using namespace std;
//string& operator+=(const char* str); //重载+= 操作符
//string& operator+=(const char c); //重载+= 操作符
//string& operator+=(const string& str); //重载+= 操作符
//string& append(const char* s); //把字符串s连接到当前字符串结尾
//string& append(const char* s, int n); //把字符串的前n个字符赋给当前的字符串
//string& append(const string& s); //把字符串s赋给当前字符串
//string& append(int n, char c); //用n个字符赋给当前字符串

void test01()
{
string str1 = "我";
str1 += "爱玩游戏";
cout << "str1 = " << str1 << endl;
str1 += ":";
cout << "str1 = " << str1 << endl;

string str2 = "LOL DNF";
str1 += str2;
cout << "str1 = " << str1 << endl;

string str3 = "I";
str3.append(" love ");
str3.append("game abcde", 4);
//str3.append(str2);
cout << "str3 = " << str3 << endl;
//lol dnf str3 = i love game
str3.append(str2, 4, 3); //从下标4位置开始, 截取3个字符,拼接到字符串末尾
cout << "str3 = " << str3 << endl;
}
int main()
{
test01();
return 0;
}

来源:https://blog.csdn.net/u011086367/article/details/54648032

标签:C语言,字符串,拼接
0
投稿

猜你喜欢

  • java使用归并删除法删除二叉树中节点的方法

    2022-03-31 23:06:12
  • 超详细的Spring Boot入门笔记(总结)

    2022-10-26 18:44:21
  • java泛型中占位符T和?有什么区别

    2022-07-05 02:53:56
  • c#中WebService的介绍及调用方式小结

    2021-05-29 00:10:17
  • C#使用iTextSharp从PDF文档获取内容的方法

    2021-06-12 04:01:11
  • Android中TabLayout+ViewPager实现tab和页面联动效果

    2022-02-23 22:41:49
  • shiro多验证登录代码实例及问题解决

    2023-11-30 07:20:00
  • Android PopWindow 设置背景亮度的实例

    2021-12-20 23:48:10
  • SpringBoot快速配置数据源的方法

    2023-07-28 13:22:42
  • Android绘制机器人小实例

    2022-12-04 00:12:42
  • 详解如何为SpringBoot项目中的自定义配置添加IDE支持

    2021-10-07 05:51:01
  • Java实现InputStream的任意拷贝方式

    2022-04-08 10:11:32
  • C语言算法积累加tag的循环队列

    2022-09-21 16:05:30
  • C#图像处理之图像均值方差计算的方法

    2023-12-10 17:35:33
  • Java算法之时间复杂度和空间复杂度的概念和计算

    2023-06-11 17:47:56
  • 基于TabLayout中的Tab间隔设置方法(实例讲解)

    2023-12-05 06:56:10
  • 设置Myeclipse中的代码格式化、注释模板及保存时自动格式化

    2023-07-14 01:21:54
  • 解决idea中yml文件不识别的问题

    2021-12-07 02:09:28
  • C#预定义的基础类型转换

    2023-08-13 03:14:16
  • 探讨:android项目开发 统筹兼顾 需要考虑的因素

    2023-08-05 11:21:32
  • asp之家 软件编程 m.aspxhome.com