怎样用C++把两个数组合并到一起形成一个新的数组,不需要合并后排序
比如:a[4]={2,4,6,5}b[5]={57,9,10,3}然后形成新的数组c[9]={2,4,6,5,57,9,10,3}...
比如:a[4]={2,4,6,5}
b[5]={57,9,10,3}
然后形成新的数组c[9]={2,4,6,5,57,9,10,3} 展开
b[5]={57,9,10,3}
然后形成新的数组c[9]={2,4,6,5,57,9,10,3} 展开
1个回答
展开全部
用 memcpy();
c++ 语言同 c 语言,只需多2行头文件,其他一字不改即可
#include<iostream>
using namespace std;
#include <stdio.h>
main()
{
int a[4]={2,4,6,5};
int b[5]={57,9,10,3}; //开5个单元,只给了4个初始值,未给的是0或不定。
int c[9],n,i;
n=sizeof(a);
memcpy(c,a,n);
n=n/sizeof(int);
for (i=0;i<n;i++) printf("%d ",c[i]);
printf("\n");
memcpy(c+n,b,sizeof(b));
for (i=0;i<9;i++) printf("%d ",c[i]);
return 0;
}
输出:
2 4 6 5
2 4 6 5 57 9 10 3 0
c++ 语言同 c 语言,只需多2行头文件,其他一字不改即可
#include<iostream>
using namespace std;
#include <stdio.h>
main()
{
int a[4]={2,4,6,5};
int b[5]={57,9,10,3}; //开5个单元,只给了4个初始值,未给的是0或不定。
int c[9],n,i;
n=sizeof(a);
memcpy(c,a,n);
n=n/sizeof(int);
for (i=0;i<n;i++) printf("%d ",c[i]);
printf("\n");
memcpy(c+n,b,sizeof(b));
for (i=0;i<9;i++) printf("%d ",c[i]);
return 0;
}
输出:
2 4 6 5
2 4 6 5 57 9 10 3 0
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询