① c语言,连接2个数组的方法
连接两个数组有点问题,for(x=0;x<6;x++) 数组长度怎么确定array.length 不能用6来表示
可以写个方法,将两数组合并成一个数组
也可以用API函数 memory
② c语言怎么合并两个数组
int main() {
char a[] = "123456";
char b[] = "abcde";
int buflen = strlen(a) + strlen(b);
char *p = (char*)malloc(buflen + 1);
memset(p, 0, buflen);
printf("%d\n", buflen);
strcpy(p, a);
strcat(p, b);
printf("%s\n", p);
free(p);
}
C的数组在创建后不可变得,因此数组合并的思想就是把数组塞到一个足够大的空间里形成新数组。
上面的函数是比较简单的合并方法
③ C语言如何把三个数组合成一个数组 如a[]={1,2,3}b[]={4,5,6}c[]={7,8,9} 结:d[]={1,2,3,4,5,6,7,8,9,}
设置一个字符串buffer,把三个数组分别循环一遍,放进buffer,用逗号隔开,然后再转化成一个数组!
④ c语言怎么用strcat将两个数组a[i]、b[j]合并成一个数组
strcat是字符串拼接函数,不是数组拼接函数,所以不能用于拼接两个数组。
可以用以下方法:
用数组的话用memcpy。
用循环把所有数组元素重新拷贝。
直接当字符串输入。
⑤ 怎么用c语言将两个数组并起来
看代码,写了几种数组的合并:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
voidcharacter()
{
charc1[]={'H','e','l','l','o'};
charc2[]={'','w','o','r','l','d','!'};
intk=0;
charnew_c[100];
for(inti=0;i<sizeof(c1);i++)//注意是sizeof()
new_c[k++]=c1[i];
for(i=0;i<sizeof(c2);i++)
new_c[k++]=c2[i];
new_c[k]='