相关疑难解决方法(0)

为什么越界指针算术未定义的行为?

以下示例来自Wikipedia.

int arr[4] = {0, 1, 2, 3};
int* p = arr + 5;  // undefined behavior
Run Code Online (Sandbox Code Playgroud)

如果我从不取消引用p,那么为什么arr + 5单独的未定义行为?我希望指针表现为整数 - 除了取消引用时,指针的值被视为内存地址.

c++ undefined-behavior

27
推荐指数
4
解决办法
5401
查看次数

标签 统计

c++ ×1

undefined-behavior ×1