小弟我想知道当前进程当中,某段虚拟地址空间是否是可读的,能做到么

我想知道当前进程当中,某段虚拟地址空间是否是可读的,能做到么?
例如,我想知道0x0200000-0x20010000这段虚拟内存地址是否是可读的?

如果我直接int i =(int*)0x02000000,失败了就会导致程序异常。我总不能逐个字节去测试吧。
有没有系统调用可以做到这一点的?

谢谢!

------解决方案--------------------
使用try去捕捉异常
------解决方案--------------------
VirtualQuery
VirtualQueryEx