指针越界
我遍历下指针的值,怎么防止中间有越位,异常什么的? 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;
}