C语言实现字符串拼接和拷贝
作者:SCAU_Jimmy 发布时间:2021-06-07 14:50:09
标签:C语言,字符串,拼接
本文实例为大家分享了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


猜你喜欢
- JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展
- 今天跟大家聊聊我心目中的物流追踪效果,效果图如下,有需要的朋友,可以直接带走,实现也没有想象中的那么复杂,特别是左边那个时间轴线,没那么复杂
- 上标是指比同一行中其他文字稍高的文字,而下标是指比同一行中其他文字稍低的文字。在生活中,我们常见的平方米、立方米等符号以及化学中的各种元素符
- 背景在研究规则引擎时,如果规则以文件的形式存储,那么就需要监听指定的目录或文件来感知规则是否变化,进而进行加载。当然,在其他业务场景下,比如
- 先看一组加载效果图,有点粉粉的加载圈: 自定义这样的圆形加载圈还是比较简单的,主要是用到Canvans的绘制文本,绘制圆和绘制圆弧的api:
- Spring的七个核心模块,供大家参考,具体内容如下1、Spring core:核心容器核心容器提供spring框架的基本功能。Spring
- 自己写了一个Swap测试类,代码如下:swap不能交换原生数据类型以及字符串类型。public class Swap5{ public st
- C#是一门强类型语言,一般情况下最好避免将一个类型转换成另一个类型,但是有些时候又不得不进行类型转换,那么就出现几种强转方式。1. 括号强转
- 本文实例讲述了Android编程实现添加低电流提醒功能的方法。分享给大家供大家参考,具体如下:特殊需求,检测电流是否正常。监听如下广播:In
- 本文实例讲述了Android程序美化之自定义ListView背景的方法。分享给大家供大家参考,具体如下:在Android中,ListView
- jasperreport导出的pdf每页显示的记录太少主要是确保Details的高度与Details中Field Text的高度一致。jas
- 本文实例讲述了java 线程方法join简单用法。分享给大家供大家参考,具体如下:虽然关于讨论线程join方法的博客已经很多了,不过个人感觉
- MyBatis 配置之集合的嵌套前言介绍在一些查询结果包装类中,包含一些 List 集合属性,使用 collection 标签可以声明该 L
- 本文实例为大家分享了java实现双色球抽奖的具体代码,供大家参考,具体内容如下实现双色球先考虑整体思路:1.随机生成7位数的数组为大奖号码(
- Java 向上转型和向下转型的详解转型是在继承的基础上而言的,继承是面向对象语言中,代码复用的一种机制,通过继承,子类可以复用父
- 概念引入我们都知道,Java 创建的对象都是被分配到堆内存上,但是事实并不是这么绝对,通过对Java对象分配的过程分析,可以知道有两个地方会
- 1.概览该教程中,我将向你展示:如何在测试时设置spring boot 日志级别。虽然我们可以在测试通过时忽略日志,但是如果需要诊断失败的测
- 如下就可以获取button中的文本内容using System.Collections.Generic;using UnityEngine;
- 1、通过C#调用Java的方法:在C#中添加调用的一些代码,利用Unity提供的一些接口实现调用Java!private const str
- JDK 中提供了一些对无状态协议请求(HTTP )的支持,下面我就将我所写的一个小例子(组件)进行描述:首先让我们先构建一个请求类(Http