iphone - 将一个指针指向另一个指针 - 会发生什么?

标签 iphone objective-c pointers

不知道是否有人可以帮我解决以下问题。如果我将一个指针指向另一个指针会发生什么?例如

Pointer 1 = Object
Pointer 2 = Pointer 1

如果我改变指针 1 会怎样:

Pointer 1 = Object 2

指针 2 现在指向哪里?

谢谢

马丁

最佳答案

Pointer 1 = Object

指针1包含对象的地址。

Pointer 2 = Pointer 1

将指针 1 的值赋给指针 2。指针 1 的值是对象的地址。所以指针2也包含了Object的地址。

Pointer 1 = Object 2

指针 1 发生变化,但指针 2 的值不变。所以指针2仍然包含Object的地址。

指针包含了地址,即指针变量的值是内存的地址。如果将其分配给另一个指针,则该地址的分配方式就像普通整数一样。但是,指向指针(即指向指针或 ** 的指针)与将指针分配给另一个指针不同。

你可以谷歌“C指针教程”(好吧,Obj-C是C的超集,指针来自C部分。Obj-C没有什么特别的)以获得更好的理解。我会推荐this专门为初学者而写的书。

关于iphone - 将一个指针指向另一个指针 - 会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3986703/

相关文章:

iphone - 如何将大图像变成小图像,并且质量与原始图像一样好?

c++ - 指向成员函数的指针在不同地址空间之间的可交换性

objective-c - dealloc 在 vi​​ewDidUnload 之后会被调用吗?

C++奇怪的指针运算

C++指针奇怪的未定义行为

iphone - PhoneGap 1.6 - 基于旧 PhoneGap 版本构建项目

iphone - 游戏被 AppStore 拒绝

Jquery 帖子无法在 Apple 设备上运行

objective-c - Objective-C 协议(protocol)的默认实现

objective-c - Cocoa 自动布局和调整 subview 的大小