【发布时间】:2016-01-10 04:37:43
【问题描述】:
我读过的关于地址运算符& 的大部分内容都说它只是用来获取地址的。不过,我最近听说它以不同的方式描述为产生一个成熟的指针。
给定以下 C 代码,
int i1 = 5;
int *p1;
p = &i1;
我的理解是 p1 通过存储 i1 的数据存储地址并记住该位置的数据将被解释为 int 来引用 int 5(这说明如何要读取的字节数以及如何解释读取的数据)。
地址运算符是否同时产生地址和“类型感知”,或者类型感知只是隐含的,因为 p1 被声明为 int 指针?
让我对此感到疑惑的一件事是看到如下代码:
void myFunc(int *ptr);
int i = 5;
myFunc(&i);
【问题讨论】:
标签: c pointers memory-address