c++ - 逐位递增指针

标签 c++ c pointers

<分区>

我知道指针按 sizeof(type_i_am_using) 返回的字节数递增。但是,有没有办法让指针一点一点递增呢?

最佳答案

However, is there anyway to make a pointer increment bit by bit?

如果你的意思是“逐字节”:不,因为有一种叫做对齐的东西。未对齐的地址不能是有效对象的地址,因此包含未对齐地址的指针是无效的。大多数使用无效指针的操作都会调用未定义的行为。如果你想,例如访问标准布局类的数组子对象,其中该数组是第一个成员,将指针转换为数组的元素类型并从那里开始工作。你描述的内容没有直接的意义。

如果您的意思是字面上的“一点一点”:有一些众所周知的方法可以使用简单的 for 循环遍历对象表示中的所有位。

关于c++ - 逐位递增指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27157413/

相关文章:

计算C中给定文件中所有字节的平均值

pointers - 如何在 Rust 中安全地构建指向 LV2 原子 DST 的胖指针/指针?

c - 在 C 中以 void 指针的形式存储通用数据

c++ - 指针转换是否保持对齐属性?

c++ - 返回以点C++结尾的数字行中出现次数最多的数字

c++ - 使类可迭代:访问冲突读取位置

c++ - Microsoft 对象,Release() 函数返回值?

c++ - vector 中 vector (创建染色体)

objective-c - 是否有可以进行代码语法高亮显示的 Objective-C/C 库?

c - 如何在 C 上更改字符串中的单个字符?