有人对指针算术有什么好的文章或解释(博客、示例)吗?图中观众是一群学习C和C++的Java程序员。
最佳答案
这是我学习指针的地方:https://cplusplus.com/doc/tutorial/pointers/
一旦理解了指针,指针算术就很容易了。它与常规算术之间的唯一区别是,添加到指针的数字将乘以指针指向的类型的大小。例如,如果您有一个指向 int
的指针,并且 int
的大小为 4 个字节,则 (pointer_to_int + 4)
将计算为前面 16 个字节(4 个整数)的内存地址。
所以当你写
(a_pointer + a_number)
在指针算术中,真正发生的是
(a_pointer + (a_number * sizeof(*a_pointer)))
在常规算术中。
关于c - 指针运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36653200/