我正在使用两个单独的Eclipse C ++实例访问相同的内存地址,并且得到了不同的结果。为什么会这样?
我正在同时为C ++运行两个不同的Eclipse实例。第一个实例(Testrun.cpp)正在为内存分配一个值,然后打印内存地址,然后停止,因为它正在等待用户输入。我要获取打印的内存地址,并将其分配给第二个实例(Hello.cpp)中的指针。第二个实例正在访问内存地址,而不打印由Testrun.cpp实例分配的整数。
为什么会这样?我想写一些软件来访问正在运行的另一个应用程序的内存。
// Testrun.cpp
#include <iostream>
using namespace std;
int Tito(int g);
int main()
{
int l;
int *e;
int i = 11;
//int *p = (int *)0x73fe44;
e = &i;
cout << &i << endl; // prints !!!Hello World!!!
//cout << e << endl;
//*e = 4;
//int *p = (int *)0x28ff43;
//*p = 99;
//cout << i << endl;
cout << "Hello" << endl;
cin >> l;
cout << *e << endl;
return 0;
}
int Tito(int g)
{
return g;
}
// Hello.cpp
#include <iostream>
using namespace std;
int main()
{
//cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
int i = 23;
int *g;
g = &i;
*g = 232;
int *p = (int *)0x73fe40;
cout << *p << endl;
return 0;
}