网站建设资讯

NEWS

网站建设资讯

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

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

#include stdio.h

创新互联专业为企业提供隆尧网站建设、隆尧做网站、隆尧网站设计、隆尧网站制作等企业网站建设、网页设计与制作、隆尧企业网站模板建站服务,10年隆尧做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

#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语言怎么合并两个字符串?

代码:

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语言基础问题 如何合并字符

table[]数组大小不合理,应该至少有4个sizeof(char)大小才行.

1、int数由个十百千...位组成。所以234可以这样得到:(table[0] * 10 + table[1])* 10 +table[2] = (2*10+3)*10+4=234。

2、可以先定义一个字符数组用来存放字符串。char newstr[4]; newstr[0] = table[0],newstr[1] = table[1], newstr[2] = talbe[2]; newstr[3] = '\0';注:newstr[3]='\0'的作用是注明字符串已结束,否则程序不知道什么时候读完newstr数组。这样就可以得到abc串了。

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语言:编写一个函数,将两个字符串合并到另一个字符串中?

#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语言字符合并函数 字符串合并函数 c
转载来于:http://cdweb.net/article/dodcejd.html