C语言中*p 和p的区别
C语言中,*p 和p都常用在指针当中表示一个指针变量,*p 和p的区别:
-
表示的含义不同
*p表示此指针指向的内存地址中存放的内容。
p表示一个指针变量的名字,指此指针变量所指向的内存地址。 -
输出的格式不同
*p一般是一个和指针类型一致的变量或者常量。
p输出的是一个16进制数, 输出一个指针的地址。 -
功能不同
*p是让程序去那个地址取出数据。
p存放的是地址。
例子:
#include <stdio.h>
void main()
{
int x=3;
int *p,*q;
p=&x,q=&x;
printf("%d\n",*p++);
printf("%d\n",(*q)++);
printf("%d\n",x);
}
输出结果为:3,3,4;
解释: