指针越界
我遍历下指针的值,怎么防止中间有越位,异常什么的? try catch throw?for (int i=0x123456;i<(i+0x654321);i+=4)
{
if(*i==111)
{
}
}
如果想看下指针i是不是异常,应该怎么try.
[ 本帖最后由 mfkblue 于 2012-12-2 23:29 编辑 ]
#include <windows.h> #include <cstdio> int main() { for( int i=0x123456; i<(i+0x654321); i+=sizeof(int*) ) // 0x123456本身就不是4的倍数,不知道你搞什么 { __try { if( *(int*)i == 111 ) { printf( "%d ", i ); } } __except( 1 ) { //printf( "*" ); } } return 0; }