c语言中指针的*p++ (*p)++ *++p ++*p

#include<stdio.h>

int main()
{
	int a[2]={1,2},*p=a;

	printf("%d\n",*p++);  //等于1
	printf("%d\n",(*p)++); //等于1
	printf("%d\n",*++p); //等于2
	printf("%d\n",++(*p)); //等于2
	return 0;
}

p++ 先取指针p指向的值(数组第一个元素1),再将指针p自增1;
(
p)++ 先取指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2)
++p 先将指针p自增1(此时指向数组第二个元素), 操作再取出该值
++*p 先取指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2)

posted @ 2020-12-14 19:14  清歌留欢  阅读(255)  评论(0编辑  收藏  举报