【发布时间】:2020-03-19 19:42:36
【问题描述】:
我有一个名为 bufferA[] 的整数数组和一个指针 *ptr,它指向这个数组 bufferA[0] 中的第一个整数。现在,我想将指针更改为指向第二个值 bufferA[1]。当我调试代码时,我可以看到这个数组中第一个整数的地址是 0x1702,现在我想更改指针,使其指向 0x1704,即 bufferA[1] 的地址。 可能有某种方法可以在没有指针的情况下实现这一点,只需读取数组的值,但是这个数组是从 ADC 模块传递到 DMA 模块的,而不是仅仅获取数组(这使得将它们存储在 DMA 中没用)我只想获取第一个值的地址并将其更改为读取以下值。 我希望这能以某种方式解释我的问题......
【问题讨论】:
-
那么你想要bufferA []数组的第一个元素的内存地址吗?您需要哪种语言?
-
我在用c写,我想知道如何设置指针的地址,比如 *ptr=&(0x1702) 所以它指向第一个元素,然后以某种方式改变地址 *ptr=&(0x1702 + 2) 所以它指向第二个元素
-
你想太多了。
ptr = &bufferA[0];,ptr = &bufferA[1];, ... -
你可以这样做
ptr++;
标签: c arrays pointers storage dma