c/c++中的指针,该如何解决

c/c++中的指针
请问有什么方法能用指针直接获取某内存的值吗?
比如:

#include<iostream>
#include<iomanip>
using namespace std;

int main(){
    int *p;
    p=0x22fefc;
    cout<<*p<<endl;
    return 0;
}



但会编译报错。。。
------解决方案--------------------
int main(){
    int *p;
    p=(int*)0x22fefc;
    cout<<*p<<endl;
    return 0;
}
但是有些地方系統不讓讀寫。
------解决方案--------------------
有些内存地址是受保护的!
------解决方案--------------------

        void* pv = 0;
std::cin >> pv;
int* pi = (int*)pv;
std::cout << *pi << std::endl;

------解决方案--------------------
引用:
C/C++ code?1234        void* pv = 0;    std::cin >> pv;    int* pi = (int*)pv;    std::cout << *pi << std::endl;

内存没分配,直接Segmentation fault
------解决方案--------------------
这块内存是没有分配的,虽然属于4G进程空间地址但是这个逻辑地址是不能访问的
------解决方案--------------------
p=0x22fefc; 此处的地址应该是内存为系统内核预留的地址,别说你用*p从中取值了,就连看的权利都没有额·····
------解决方案--------------------
仅供参考
MSDN98中的例子walker又名pwalk。 完整列出指定进程的内存使用情况,显示进程地址空间内容,装载哪些DLL,代码、数据、堆栈段分配在何处,可以用来检测内存泄漏,监测内存使用。
http://download.csdn.net/detail/zhao4zhong1/3667896

另外推荐使用WinHex软件查看文件或内存中的原始字节内容。

------解决方案--------------------
引用:
仅供参考
MSDN98中的例子walker又名pwalk。 完整列出指定进程的内存使用情况,显示进程地址空间内容,装载哪些DLL,代码、数据、堆栈段分配在何处,可以用来检测内存泄漏,监测内存使用。
http://download.csdn.net/detail/zhao4zhong1/3667896

另外推荐使用WinHex软件查看文件或内存中的原始字节内容。
……
有木有linux的  大牛!
------解决方案--------------------
引用:
请问有什么方法能用指针直接获取某内存的值吗?
比如:
C/C++ code?12345678910#include<iostream>#include<iomanip>using namespace std; int main(){    int *p;    p=0x22fefc;    cout<<*p<<endl;    return 0;}

但会编译报错……
有些内存是系统保护的你获取不到的。。。。
------解决方案--------------------
0x22fefc,这个地址是你随便写的,它的内容可不是你的程序有权访问的,当然出错。
------解决方案--------------------
你在程序中的代码能访问到的内存范围仅仅局限于编译器为你程序分配的空间吧?<这个是我自己的感觉,不敢保证,希望后面的可以给评价一下。>
如果你随便写一个地址赋给一个指针变量,就可以用这个指针去访问内存的内容的话,那操作系统就没有什么安全性可言了吧。虽然内存很大,但是为执行的程序分配的还是很有限的。这里面很多是你的代码没有访问权限的,所以会错。
------解决方案--------------------
#include <stdio.h>
#include <stdlib.h>
void main()
{

        int *p = (int*)malloc(1);