小编Pav*_*vel的帖子

为什么这个演员的结果不是左值?

我需要一些关于这种奇怪行为的建议 - 让我们有这个代码:

int ** p;
Run Code Online (Sandbox Code Playgroud)

编译没有任何麻烦:

p++;
Run Code Online (Sandbox Code Playgroud)

但是这个:

((int**)p)++;
Run Code Online (Sandbox Code Playgroud)

给我这个错误信息:“error: lvalue required as increment operand”.

我正在转向p它已经存在的类型,没有任何改变,那么问题是什么?这是我遇到的问题的简化版本,当我试图编译一个旧版本的时候gdb.所以我想,这样做有所改变.知道第二个例子有什么问题吗?

c casting rvalue lvalue

5
推荐指数
4
解决办法
1075
查看次数

标签 统计

c ×1

casting ×1

lvalue ×1

rvalue ×1