指针计数字节,因此要指向下一个字节,您需要将指针的值更改为1.然而,指针算法会对指针指向的对象进行计数,并且递增指针会使其值增加其指针类型的大小.如果要指向字节,请使用char指针,因为char根据定义,大小为1,指针上的指针算术char允许您指向字节:
T * p = get_pointer();
char * cp = reinterpret_cast<char*>(p);
cp += 16;
Run Code Online (Sandbox Code Playgroud)
向char类型和从char类型转换指针不构成类型惩罚,并且标准明确允许.但是,您不能使用生成的指针来访问实际上不在该地址的任何对象.