C语言怎么合并两个字符串?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言怎么合并两个字符串?相关的知识,希望对你有一定的参考价值。

字符串1: “123”
字符串2: “abc”
现在想让字符串变成 “123abc”
请问怎么写?

代码:

char str1="123";

char str2="abc";

strcat(str1,str2);

printf("%s",str1);

例如:

#include <stdio.h>

#include <string.h>

main()

char strDes[N]= "kkkjdah", strSor[N]="sdasdaaa";

strcat(strSor,strDes);//链接

puts(strDes);

puts(strSor);

扩展资料:

字符串在存储上类似字符数组,它每一位单个元素都是能提取的,字符串的零位是它的长度,如s[0]=10,这提供给我们很多方便,例如高精度运算时每一位都能转化为数字存入数组。

通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。设p、q是两个串,求q在p中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。

参考资料来源:百度百科-字符串

参考技术A 先加头文件#include<string.h>
char a[10]="123";
char b[10]="abc";
strcat(a,b); //连接两个字符串,连接后的字符串存放在a中,数组a中有足够空间
printf("%s",a); //输出连接后的字符串

或:
#include<string.h>
char a[10]="123";
char b[10]="abc";
char c[20];
strcpy(c,a); //把串a复制到有足够空间的c中
strcat(c,b); //把b连接到c的串尾
参考技术B 可以使用string.h头文件中的strcat函数 char *a="123"; char *b = "abc"; strcat(a,b)即可,更多的字符串操作可以看一下string.h头文件中 有好多封好的, 如果不想用的话就可以自己写一个函数

函数内容:1.获取两个字符串的总长度,如total_len=len1+len2然后申请一个动态的数组大小为total_len 然后把字符串中的内容依次放进去就可以了。
参考技术C 先加头文件#include<string.h>

char a[10]="123";
char b[10]="abc";
strcat(a,b); //连接两个字符串,连接后的字符串存放在a中
printf("%s",a); //输出连接后的字符串本回答被提问者采纳
参考技术D 用strcat就可以了,很简单的
strcat(a,b)

Matlab中怎样把两个字符串合并成一个字符串?

Matlab中怎样把两个字符串合并成一个字符串?

1、方法一:通过c=[a1,b1]格式拼接

第一步打开matlab的命令行窗口,输入a1='abcd123';b1='decf456';c=[a1,b1],按回车键,如下图所示:

2、第二步可以看到c='abcd123decf456',成功将两个字符串进行拼接起来了,如下图所示:

3、方法二:通过strcat函数进行拼接

第一步在命令行窗口中输入d=strcat(a1,b1),按回车键,如下图所示:

4、第二步可以看到d='abcd123decf456',实现了和方法一一样的效果,拼接了两个字符串,如下图所示:

5、方法三:通过sprintf函数拼接多个字符串

第一步输入a1='abcd123';b1='decf456';c1=123456;s=sprintf('%s%s%d',a1,b1,c1),按回车键,如下图所示:

6、第二步可以看到s='abcd123decf456123456',成功将多个字符串整型拼接起来了,如下图所示:

参考技术A

1. 用 strcat 函数连接两个字符串。

2.以下是相关字符串处理 
a='  a';b='b  b';c='cccc';m='' 
% 获取字符串长度 
length(a)     
% 连接两个字符串,每个字符串最右边的空格被裁切 
d=strcat(a,c)  
length(d) 
% 连接多行字符串,每行长度可不等,自动把非最长字符串最右边补空格 
% 使与最长字符串相等,会忽略空字符串 
e=strvcat(a,b,m) 
size(e) 
% char连接,空字符串会被空格填满 
f=char(a,b,m) 
size(f)

% strcmp    比较两个字符串是否完全相等,是,返回真,否则,返回假 
% strncmp    比较两个字符串前n个字符是否相等,是,返回真,否则,返回假 
% strcmpi    比较两个字符串是否完全相等,忽略字母大小写 
% strncmpi   比较两个字符串前n个字符是否相等,忽略字母大小写

% isletter  检测字符串中每个字符时否属于英文字母 
% isspace    检测字符串中每个字符是否属于格式字符(空格,回车,制表,换行符等) 
% isstrprop  检测字符每一个字符是否属于指定的范围 
a='d sdsdsd 15#'; 
b=isletter(a) 
c=isspace(a)

% 字符串替换和查找   
% strrep 进行字符串替换,区分大小写 
%   strrep(str1,str2,str3) 
%      它把str1中所有的str2字串用str3来替换

% strfind(str,patten) 查找str中是否有pattern,返回出现位置,没有出现返回空数组 
% findstr(str1,str2)   查找str1和str2中,较短字符串在较长字符串中出现的位置,没有出现返回空数组 
% strmatch(patten,str) 检查patten是否和str最左侧部分一致 
% strtok(str,char)     返回str中由char指定的字符串前的部分和之后的部分, 
mm='youqwelcome'; 
[mm1,mm2]=strtok(mm,'q')

% blanks(n)            创建有n个空格组成的字符串 
% deblank(str)          裁切字符串的尾部空格 
% strtrim(str)          裁切字符串的开头和尾部的空格,制表,回车符

% lower(str)           将字符串中的字母转换成小写 
% upper(str)            将字符串中的字母转换成大写  
% sort(str)              按照字符的ASCII值对字符串排序

% num2str         将数字转换为数字字符串 
% str2num          将数字字符串转换为数字 
% mat2str          将数组转换成字符串 
% int2str          把数值数组转换为整数数字组成的字符数组

参考技术B strcat(str 1,str 2,……str n) 参考技术C strcat(str 1,str 2,……str n)本回答被提问者采纳

以上是关于C语言怎么合并两个字符串?的主要内容,如果未能解决你的问题,请参考以下文章

用C语言怎么把文件中的两行合并成一行

c语言基础问题 如何合并字符

在c语言或者php 怎么将两个或多个常量连接起来,比如一个常量为1 另一个常量为2 连接成12

C语言的宏定义,字符串连接

c语言把数字字符串中的数字相加的程序

r语言中怎么把两个随机变量合并成一个