hangfrieddays 发表于 2021-12-13 21:39:21

空指针寻址

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int num={1,2,3};
    void* ptr=num;
    ptr=ptr+sizeof(int);
    printf("%d",*(int*)ptr);
    return 0;
}
是不是空指针++默认为加一个字节长度?

人造人 发表于 2021-12-13 21:51:09

我记得 vs 不允许对 void 指针++
gcc 可以++,是加一个字节
如果你要代码可移植,那就把void *转成unsigned char *然后++肯定没问题
页: [1]
查看完整版本: 空指针寻址