不知道是否有人可以帮我解决以下问题。如果我将一个指针指向另一个指针会发生什么?例如
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/