请参见下面的代码片段:将指针指向变量地址并明确指向内存地址有什么区别?
#include<iostream>
using namespace std;
int main()
{
int a=10;
int *p=&a;
*(p+1)=6;
cout<<*(p+1);
}
上面的代码不起作用。但是,下面的代码段,其中分配给一个明确的内存地址,没有工作:
#include<iostream>
using namespace std;
int main()
{
int *p=(int *)0x28fefc;
*(p+1)=6;
cout<<*(p+1);
}
为什么这些方法中的一个工作,而不是其他? 我在第二个地址中使用了我的电脑的内存地址。该地址可能无法在其他某台机器上使用。
你是什么意思的“不工作”?怎么了? – 2014-09-13 18:50:32
过程返回负值并立即终止 – user3553836 2014-09-13 18:58:11