永发信息网

C语言中怎么把一维数组赋给另外一个一维数组

答案:7  悬赏:10  手机版
解决时间 2021-02-12 13:18
C语言中怎么把一维数组赋给另外一个一维数组
最佳答案
void main()
{
int a[10]={1,2,3,4,5....};
int b[10];int i;
for(i=0;a[i]!=0;i++)
b[i]=a[i];
}

如果a[10]=b[10] 那么仅仅赋了b{}数组的第11个元素给a[]数组的第十一个元素,没法一次性全部赋给.楼下那个方法也不错.
全部回答
不可以,只能挨个将b 里面的值赋值到a里面
int i;
for(i=0;i<(sizeof(b)/sizeof(int);i++)
{
a[i] = b[i];
}
不过如果你保证了a和b大小一致的话,也可以偷懒
memcpy(a, b, sizeof(b));
我只想说,推荐答案在验证你说的赋值方法的时候有问题的吧,编译就会报错你还得出结果了?!
不行
这样只是数组b第11个元素赋值给数组a第11个元素

可以这样 n为你要从数组b赋值到数组a的个数
for(i=n;i>=0;i--)
a[i]=b[i];
不可以a【10】指的是a数组的第11个元素,同样b也一样,你这样写只能够把b的第11个元素值赋给a的第十一个元素
有两种方法可以实现。
1 逐个赋值法。
采用循环,逐项赋值。
以整型为例,int a[10], b[10];
要把a的值赋值给b,可以写作
int i;
for(i = 0; i < 10; i ++)
b[i] = a[i];
2 整体复制法。
利用C语言库函数memcpy可以整体复制。memcpy声明与string.h中,形式为
void * memcpy(void *dst, void *src, int length);
其功能为将src地址上长度为length字节的数据,复制到dst上。
于是上一个方法中的例子,可以用
memcpy(b,a,sizeof(a));
来实现相同效果。
代码量较前一个方法更少,同时效率也更高。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一语花香鲜花(湘约花廊)地址有知道的么?有点
顺丰快递为什么不给运电视了
五子棋中的三手胜是什么意思啊?
引起大气运动的根本原因是A高低空的气压差异
勿忘我鲜花屋地址在什么地方,我要处理点事
万家灯火便利店地址在什么地方,想过去办事
类似中年心事浓如酒的句子
奥特曼的手势是什么意思
红冠(超越)福安运作中心我想知道这个在什么地
【运动系统由什么组成】运动系统主要是由、和
花仙子家居花艺馆怎么去啊,我要去那办事
下面说法错误的有( )。
用VE涂过眉毛或睫毛的进
玩具总动员1剧情介绍
庆华渔具店在哪里啊,我有事要去这个地方
推荐资讯
建蓉美容美发厅地址在哪,我要去那里办事
细胞液的酸碱度为什么会发生变化
全民飞机大战验证码怎么都不正确
林英理发店地址在哪,我要去那里办事
建行换卡多少钱
职业、生意、交易、事业的英文单词怎么写
乘客开门事故责任划分,有没有好心的车友帮帮
连庄村地址在什么地方,我要处理点事
艺修堂书法·美术地址好找么,我有些事要
沐泽戏剧工坊地址好找么,我有些事要过去
请教恋爱高手 怎么样才能让比自己大的女孩子
请问老板不开支咋办?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?