现有一个指向内存的一个指针,如果在当前位置上移动指针(100),怎么实现?

解决方案 »

  1.   

    什么类型的指针?
    char *p = ...
    p += 100;就移动了
      

  2.   

    char* pNew = pOld - 100;
    注意类型,因为对于不同的指针,移动的单位不同(有的按byte,有的按word等)
      

  3.   

    100什么?字节?
    pointer += 100;
      

  4.   

    用IsBadReadPtr判断内存是否可以读
    IsBadWritePtr判断是否可以写
      

  5.   

    void * 不能直接加的,不过可以这样操作:
    void * p;
    p = (void *)((char *)p + sizeof(char)*100);