c++ - 两个单独的指针可以引用同一个地址吗?如果是这样,我可以用任一指针更改该地址的值吗?

标签 c++ pointers reference

所以,我有这个代码片段:

int * iPtr ;
int * jPtr ;
int i = 5, k = 7;
iPtr = &i;
jPtr = iPtr ;

刚刚开始学习指针,需要解开一些疑惑。

  1. jPtr 现在基本上也指向 i 了吗?
  2. 我知道我可以使用 *iPtr 更改 i 的值,但是如何更改 jPtr 指向的对象的值?
  3. 改变 jPtr 指向的对象将如何影响 iPtr 和 i 指向的对象的值?

最佳答案

1000 1001 1002   1004         --> address location ( note: just indicative)
----------------------------
| 5 | 7 | 1000 | 1000 |
| i | j | iPtr | jPtr |
-----------------------------
 ^^        |       |
 ||________|       |
 |_________________|

iPtr=&i; --> iPtr points to i ==> address of i is stored in iPtr ==> *iPtr contents of i 
jPtr=iPtr; ->jPtr points to i 

关于c++ - 两个单独的指针可以引用同一个地址吗?如果是这样,我可以用任一指针更改该地址的值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2831465/

相关文章:

C++ with Kafka - 消费者刚刚收到一些生产者消息

c++ - 如何 list.sort(member Function);?

c++ - 在带有 ncurses (C++) 的同一个字符串流中使用不同的颜色

c++ - Qt C++ : How to change layout after new project opening?

c++ - 虚函数指针混淆

c - 使用具有第一个元素地址的指针打印数组

C++ - 在基于磁盘的 vector 中管理引用

C 指针初始化差异

javascript - Raphaeljs : How to get the elements reference back using event. 目标?

C# - 可移植类库 "XmlElement does not exist in the namespace System.XML"