*和++使用详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/itworld123/article/details/79955932
2018-04-16  创建人:Ruo_Xiao
邮箱:xclsoftware@163.com
  1. 二者优先级相同,都属于单目运算符,结合方向是***从右向左***。
  2. 栗子:注意,上面的每条cout输出,要单独输出才能得到后面的结果。
#include <string>
#include <iostream>
using namespace std;

int main() 
{
	int a[5]={1,2,3,4,5};
	int *p = a;
	//*p++ 先取指针p指向的值  (数组第一个元素1),再将指针p自增1;
	cout << *p++<<endl;      //1
	cout <<(*p++)<<endl;     //2
	
	//(*p)++ 先去指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2)
	cout << (*p)++<<endl;    //1
	cout <<((*p)++)<<endl;   //2
	
	//*++p 先将指针p自增1(此时指向数组第二个元素),* 操作再取出该值
	cout << *++p<<endl;      //2
	cout <<(*++p)<<endl;     //3
	
	//++*p 先取指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2)
	cout <<++*p<<endl;       //2
	cout <<(++*p)<<endl;     //3

	cin.get();
	return 0;
}

(SAW:Game Over!)

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭