搜索
bottom↓
回复: 13

求教一个关于数组的问题

[复制链接]

出0入0汤圆

发表于 2019-2-16 18:43:41 | 显示全部楼层 |阅读模式
本帖最后由 rjx 于 2019-2-16 18:45 编辑

有两个数组A和B,其内部的元素不同,想要在不同的条件下,第三个数组C分别等于A和B 。我用数组写的,结果不行,数组C好像没有得到想要的值。请教应怎么搞。

uchar  C[3]={0};
uchar A[]={1,2,3};
uchar B[]={4,5,6};
uchar *p=C;

if(PIND.4==1)
{
        p=A;
}
else if(PIND.4==0)
{
        p=B;
}

出130入129汤圆

发表于 2019-2-16 18:49:51 | 显示全部楼层
P等于A或者B之后,就跟C没关系啦

出0入442汤圆

发表于 2019-2-16 18:52:31 | 显示全部楼层
68336016 发表于 2019-2-16 18:49
P等于A或者B之后,就跟C没关系啦

我ca,LZ想要的结果是把数组赋值给C,然后程序只是把指针改了一下。。

出0入0汤圆

发表于 2019-2-16 19:14:57 | 显示全部楼层
大数组有memcpy,小的自己写个循环

出0入0汤圆

发表于 2019-2-16 21:58:42 来自手机 | 显示全部楼层
楼主应该好好理解一下指针的定义

出0入0汤圆

 楼主| 发表于 2019-2-18 14:49:56 | 显示全部楼层
68336016 发表于 2019-2-16 18:49
P等于A或者B之后,就跟C没关系啦

请教,那应该怎么弄?

出0入0汤圆

发表于 2019-2-18 15:38:46 | 显示全部楼层
本帖最后由 yiminglei_2 于 2019-2-18 15:51 编辑

怎么同一个问题又开了一贴。。。

https://www.amobbs.com/forum.php ... ;extra=#pid10618918

出130入129汤圆

发表于 2019-2-18 16:11:29 | 显示全部楼层
rjx 发表于 2019-2-18 14:49
请教,那应该怎么弄?


正如楼上朋友跟你说的,你要熟悉指针用法。
p是指针,可以任意指向A,B,C,你就用这个p就行了,灵活,别用C这个数组,麻烦。

p=B后,p[0]  p[1]   p[2]这样形势来访问就可以

出0入0汤圆

发表于 2019-2-18 16:40:23 | 显示全部楼层
uchar  C[3]={0};
uchar A[]={1,2,3};
uchar B[]={4,5,6};

if(PIND.4==1)
{
        memcpy(C,A,3);
}
else if(PIND.4==0)
{
        memcpy(C,B,3);
}

出0入0汤圆

发表于 2019-2-18 17:39:25 | 显示全部楼层
p=C只是让p指向了数组C的地址,并不是p就变成C了。后面p又指向A,和C就没啥关系了。

出0入0汤圆

发表于 2019-2-18 17:40:07 | 显示全部楼层
zhugean 发表于 2019-2-18 16:40
uchar  C[3]={0};
uchar A[]={1,2,3};
uchar B[]={4,5,6};

正解来了。

出0入0汤圆

 楼主| 发表于 2019-2-19 10:46:38 | 显示全部楼层
9楼用memcpy函数的方法经试验是可行的。

出0入0汤圆

发表于 2019-2-19 15:32:20 | 显示全部楼层
不用p 直接用C就行

出0入0汤圆

发表于 2019-2-19 22:49:03 | 显示全部楼层
你只是在赋地址
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 02:53

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表