是否可以在同一语句中的指针上使用地址运算符和前缀增量,如果是的话如何?
例子,
#include <stdio.h>
#include <stdint.h>
void main() {
uint8_t arr_var[2];
arr_var[0] = 0xa;
arr_var[1] = 0xf;
uint8_t *ptr = arr_var;
uint8_t **dptr = &(++ptr);
}
我收到错误
错误:需要左值作为一元“&”操作数
uint8_t **dptr = &(++ptr);
是否有任何其他选择,而不是使其成为 2 个单独的语句(增量(ptr++
),然后是地址(&ptr
))。