OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3780|回复: 6

弱弱的问一个很基础的问C语言问题,如何获取code修饰的数组里面的元素

[复制链接]

83

主题

217

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-4-8
在线时间
116 小时
发表于 2016-7-8 14:54:33 | 显示全部楼层 |阅读模式
1金钱
像这样的:
code number[] ={0x10,0x11,0x23………………………………}

void show(const unsigned char *p)
{
  ……
  ……
  ……
}


想来想去,调用   show(&number);   也不对, 调用 show(&number[0]); 也不对,  直接 show(number);  也不对。

请问应该怎样写才对啊,我就只是想指针*p 知道number 然后靠指针去取里面的元素,难道这样行不通么。如果行不通,有没有其他的什么办法啊。

最佳答案

查看完整内容[请看2#楼]

像这样的: unsigned char code number[] ={0x10,0x11,0x23………………………………} void show(const unsigned char *p) { unsigned char tmp = p[0]; //举例 …… …… } show(number); 这样调用是没有问题的,不知楼主用的什么编译工具。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

347

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
2078
金钱
2078
注册时间
2014-12-19
在线时间
710 小时
发表于 2016-7-8 14:54:34 | 显示全部楼层

像这样的:
unsigned char code number[] ={0x10,0x11,0x23………………………………}

void show(const unsigned char *p)
{
  unsigned char tmp = p[0]; //举例
  ……
  ……
}
show(number); 这样调用是没有问题的,不知楼主用的什么编译工具。
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2016-7-8
在线时间
1 小时
发表于 2016-7-8 15:06:19 | 显示全部楼层
code 是 unsigned char 么?
是的话调用的时候show(number);就行了。
回复

使用道具 举报

27

主题

711

帖子

0

精华

版主

Rank: 7Rank: 7Rank: 7

积分
12216
金钱
12216
注册时间
2015-11-5
在线时间
2117 小时
发表于 2016-7-8 15:32:00 | 显示全部楼层
code是51的写法吧,一般都用const
拿来长岛冰茶换我半晚安睡
回复

使用道具 举报

83

主题

217

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-4-8
在线时间
116 小时
 楼主| 发表于 2016-7-8 16:14:45 | 显示全部楼层
lvehe 发表于 2016-7-8 14:54
像这样的:
unsigned char code number[] ={0x10,0x11,0x23………………………………}

少了unsigned char;   直接 code unsigned char number[] ={0x10,0x11,0x23………………………………}  编译器就不会发生warning。 少了unsigned char; 编译器就发生warning 然后一直取到的元素也不是想要的。
回复

使用道具 举报

83

主题

217

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-4-8
在线时间
116 小时
 楼主| 发表于 2016-7-8 16:15:39 | 显示全部楼层
FreeRTOS 发表于 2016-7-8 15:32
code是51的写法吧,一般都用const

一直都没分明白 code 和const 有什么区别,占用的地方也一样是flash
回复

使用道具 举报

83

主题

217

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-4-8
在线时间
116 小时
 楼主| 发表于 2016-7-8 16:16:21 | 显示全部楼层
sanshai 发表于 2016-7-8 15:06
code 是 unsigned char 么?
是的话调用的时候show(number);就行了。

   是这样的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 17:04

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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