*和++使用详解

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;
}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/itworld123/article/details/79955932
个人分类: c-c++
上一篇C++ 向函数传数组的方法
下一篇霍夫变换
想对作者说点什么? 我来说一句

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

关闭
关闭
关闭