[开发工具] 为什么数组给函数形参数组赋值提示警告?

[复制链接]
3403|12
 楼主| shuidi_wangdan 发表于 2013-10-18 16:17 | 显示全部楼层 |阅读模式
请教!定义函数如下:
uchar table[]={1,2,3}
void fa(uchar dat[])
{
......
}
void main()
{
   fa(table[]);
}
为什么这样使用提示警告?警告如下:
Warning [2054] suspicious pointer conversion,
提示可疑指针转换,
我使用的是MPLAB IDE C18 V3.44
请教高手怎么解决?我一直在困扰这个问题!!!


yewuyi 发表于 2013-10-18 17:29 | 显示全部楼层
使用数组地址传入试试。
伏尔加的鱼 发表于 2013-10-19 09:43 来自手机 | 显示全部楼层
你把方括号去掉
opal11 发表于 2013-10-19 16:38 | 显示全部楼层
我之前也出现过这个问题。
星星ARM 发表于 2013-10-20 21:11 | 显示全部楼层
为什么不这么写呢?
uchar table[]={1,2,3}
void fa(uchar X)
{
......
@@=table【x】;
}
void main()
{
    fa(X);
}
星星ARM 发表于 2013-10-20 21:13 | 显示全部楼层
不知道我猜你的想法估计就是想用table数组里的数据,那为什么不设一个中间参数取值呢。不知道我的想法对不对?
 楼主| shuidi_wangdan 发表于 2013-10-21 10:31 | 显示全部楼层
opal11 发表于 2013-10-19 16:38
我之前也出现过这个问题。

你解决了吗?
 楼主| shuidi_wangdan 发表于 2013-10-21 10:34 | 显示全部楼层
星星ARM 发表于 2013-10-20 21:11
为什么不这么写呢?
uchar table[]={1,2,3}
void fa(uchar X)

我是想把整个数组的数赋值给另一个数组,因为数组的值会随时发生变化,星星大哥有什么好的方法吗?
 楼主| shuidi_wangdan 发表于 2013-10-21 10:50 | 显示全部楼层
yewuyi 发表于 2013-10-18 17:29
使用数组地址传入试试。

叶大哥,可以具体一点吗?我想把整个数组的值赋值给形参数组,有好办法吗?
yewuyi 发表于 2013-10-21 11:29 | 显示全部楼层
uchar table[]={1,2,3}
void fa(uchar dat[])
{
......
}
void main()
{
   fa(&table);
}
 楼主| shuidi_wangdan 发表于 2013-10-21 11:34 | 显示全部楼层
本帖最后由 shuidi_wangdan 于 2013-10-21 11:37 编辑
yewuyi 发表于 2013-10-21 11:29
uchar table[]={1,2,3}
void fa(uchar dat[])
{

这样我试过,也是提示警告。
我自己定义了一个指针,如下:
uchar table[]={1,2,3}
uchar *p;
void fa(uchar dat[])
{
......
}
void main()
{
   p=&table[0];
   fa(p);
}
这样的话,没有提示警告,并且和预想的是一致的。
不知道为什么这样没有警告?

yewuyi 发表于 2013-10-21 11:38 | 显示全部楼层
本帖最后由 yewuyi 于 2013-10-21 12:26 编辑
shuidi_wangdan 发表于 2013-10-21 11:34
这样我试过,也是提示警告。
我自己定义了一个指针,如下:
uchar table[]={1,2,3}

我的那种写法在我这里没有提示任何警告。

你的那种写法和我的想法基本相同,都是转化为地址传送。
 楼主| shuidi_wangdan 发表于 2013-10-21 11:42 | 显示全部楼层
yewuyi 发表于 2013-10-21 11:38
我的那种想法在我这里没有提示任何警告。

你的那种写法和我的想法基本相同,都是转化为地址传送。 ...

以前用keil的没出现过这种警告,看来编译软件不一样,编译效果也不一样,我还要努力学习啊!谢谢你!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:奇葩满天下,不分你我他! 奋斗!https://bbs.21ic.com/static/image/smiley/chubby/17.gif[/url]

65

主题

549

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部