我有以下代码:
int x;
int * xPtr = &x;
int * Get_xPtr(void);
void someFunction(int * y);
int * Get_xPtr(void)
{
return xPtr;
}
void someFunction(int * y)
{
...
...
}
void main(void)
{
someFunction(++Get_xPtr());
}
这段代码编译良好,没有函数 Get_xPtr() 的返回值(地址)的增量,但是随着增量我得到错误:
“错误:需要左值作为增量操作数”
我想这是不允许的语法,但为什么呢?有没有其他方法可以做到这一点,或者我需要:
int * tempPtr = GetxPtr();
tempPtr++;
someFunction(tempPtr);