189 8069 5689

c语言字符串合并函数,c++ 合并字符串

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

代码:

目前创新互联建站已为成百上千的企业提供了网站建设、域名、网站空间、网站托管、服务器租用、企业网站设计、灌阳网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

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中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。

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

C语言:编写一个函数,将两个字符串合并到另一个字符串中?

#include stdio.h

#include string.h

void catstring(char *str0, int len0, char *str1, int len1, char *str2, int len2)

{

if (len2 = len0 + len1) {

return;

}

memcpy(str2, str0, len0);

memcpy(str2 + len0, str1, len1);

}

int main()

{

char str0[20] = "Golden";

char str1[20] = "View";

char str2[20] = { 0 };

catstring(str0, strlen(str0), str1, strlen(str1), str2, 20);

printf("str2 = %s\n", str2);

return 0;

}

请采纳,谢谢!

c语言中如何 把多个字符串合并

#include stdio.h

#include string.h

main()

{

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

strcat(strSor,strDes);//链接

puts(strDes);

puts(strSor);

}

c语言 字符串合并

////////// 如果通过一个地址返回呢?该怎么处理啊?

#includestdio.h

#includestring.h

#define M 3

#define N 30

void fun(char a[M][N], char *b)

{

for (int i = 0; i M; ++ i ){

strcat( b, a[i]); // 这样子使用.

}

}

int main(int argc, char ** argv )

{

char w[M][N]={"AAAA","BBBBBBB","CC"}, a[100];

int i ;

printf("The string: \n");

for(i=0; iM; i++){

printf("w[%d] = [%20s] \n", i, w[i]);

}

printf("\n");

//bzero(a, sizeof(a));

memset(a,0, sizeof(a));

fun(w,a);

printf("The A string: --------- \n");

printf("a = [%30s]\n",a);

return 0;

}

////////////////////////////// 为什么结果出现错误 无法运行??

// 因为 b 没有给它申请内存, 是个未定义的指针. 肯定会出错.

// 用 strcat 时, 一定要确保, 目标内存的大小有足够的空间存放合并后的字符串.

// 如果空间太小, 就会出现内存溢出.

#includestdio.h

#include string.h  

int main( int argc, char ** argv )

{

char *b = NULL;

char a[3][20]={"AAAA","BBBBBBB","CC"};

int len = strlen(a[0]) + strlen(a[1]) + strlen(a[2]) + 1 ; //目标字符串长度.

b = (char *)malloc( len ) ;

memset(b, 0, len); // 清0 ;

strcat(b,a[0]);

strcat(b,a[1]);

strcat(b,a[2]);

printf("%s",b);

free(b); // 要记得 free 哦.

b = NULL;

return 0;

}

C语言里如何将多个字符串数据合成一个数据?

主要有两种方法,一个是字符串连接操作strcat,另一个是格式化输出sprintf,主要代码如下,

//程序功能实现字符串合并

#include stdio.h

#include string.h

int main(int argc, char *argv[])

{

char name1[32]="456",name2[32]="123",name3[32]="789";

char NAME1[256]={'\0'},NAME2[256]={'\0'};

//字符串连接函数

strcat( NAME1,name2);

strcat( NAME1,name1);

strcat( NAME1,name3);

//格式化输出

sprintf(NAME2,"%s%s%s", name2, name1, name3);

printf("%s\n",NAME1);

printf("%s\n",NAME2);

return 0;

}

char *strcat( char *str1, const char *str2 );函数将字符串str2

连接到str1的末端,并返回指针str1。

int sprintf( char *buffer, const char *format, ... );sprintf和printf类似,

只是把输出发送到buffer缓冲区中,返回值是写入的字符数量。

在c++中如何将两个字符串合并成一个字符串

这要看类型,如果用的是C++里面的string类,那么只需要用上重载符号 + 就行了:

例如:

string s1="12345890",s2="abcdedg";

s1+=s2;//把s2连接在s1尾部

couts1endl;//输出结果是"12345890abcdedg",不含引号

如果是C语言里面的字符数组,可以用strcat(char *s1,char *s2)函数,功能是把,s2连接在s1尾部:

例如:

char s3[]="12345678",s4[]="abcded";

char s5[100];

strcat(s5,s3); strcat(s5,s4);//功能如上所说

couts5endl;//输出结果是"12345678abcded",不含引号


文章名称:c语言字符串合并函数,c++ 合并字符串
本文路径:http://cdxtjz.com/article/hcdceo.html

其他资讯