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

2019-07-20 21:24发布

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

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


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

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

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
lvehe
1楼-- · 2019-07-20 22:44

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

void show(const unsigned char *p)
{
  unsigned char tmp = p[0]; //举例
  ……
  ……
}
show(number); 这样调用是没有问题的,不知楼主用的什么编译工具。
sanshai
2楼-- · 2019-07-21 01:04
 精彩回答 2  元偷偷看……
FreeRTOS
3楼-- · 2019-07-21 04:00
 精彩回答 2  元偷偷看……
vention
4楼-- · 2019-07-21 06:54
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 然后一直取到的元素也不是想要的。
vention
5楼-- · 2019-07-21 12:50
FreeRTOS 发表于 2016-7-8 15:32
code是51的写法吧,一般都用const

一直都没分明白 code 和const 有什么区别,占用的地方也一样是flash
vention
6楼-- · 2019-07-21 16:11
sanshai 发表于 2016-7-8 15:06
code 是 unsigned char 么?
是的话调用的时候show(number);就行了。

   是这样的

一周热门 更多>