搜索

C语言指针中 *p 和 p 的区别

发布网友 发布时间:20小时前

我来回答

1个回答

热心网友 时间:19小时前

首先,需要了解如何定义指针变量,即 int *p;

此时,p被视为一个指针变量,可以进行赋值,如 p = &a;(这里,a 是一个 int 类型的变量,需要提前定义,即 int a;)

接下来,我们来探讨“*”的作用。

这里,我们需要区分两种情况。

第一种情况,在定义时,* 用于区分指针变量,即有 * 则代表该变量是一个指针变量。但要注意,这里的 *p 实质上还是一个指针变量,* 只是起到一个标志的作用,表明这是一个指针变量。因此,在初始化时,应这样写:

int a, *p = &a;

而不能写成:

int a, p = &a;

第二种情况是定义以外的其他情况。*p 和 p 的区别在于,p 是一个指针变量,它包含的是地址。

而 p 则是指针 p 所指向的地址的数据。例如,int a, *p = &a;,那么后续的 p 代表的是 &a,即 a 的地址。而 *p 代表的是 a。

总的来说,*p 在定义时是一个指针变量,定义完成后就代表指针所指向的数据。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
Top