Edu*_*yan 0 c++ pointers dereference
请考虑以下代码:
int main() { int* p = new int(3); p+=4; std::cout<<*p<<std::endl; }
我的编译器(Visual Studio 2012)打印:-7514522142int这种情况. 那么我们能以某种方式推断出输出并且这段代码合法吗?
-7514522142
jua*_*nza 8
您正在访问int超出范围的内存(分配给单个对象).行为未定义,即不可推导.尽管在语法上有效,但该程序不应被视为合法.
int
归档时间:
10 年,5 月 前
查看次数:
69 次
最近记录: