*p++,(*p)++,*++p,++*p有什么不同
【摘要】 例如 int a[5]={1,2,3,4,5};int *p = a; *p++ 先取指针p指向的值(数组第一个元素1),再将指针p自增1; cout << *p++; // 结果为 1 cout <<(*p++); // 1 (*p)++ 先去指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2 cout <<...
-
例如
-
-
int a[5]={1,2,3,4,5};
-
int *p = a;
-
-
*p++ 先取指针p指向的值(数组第一个元素1),再将指针p自增1;
-
-
cout << *p++; // 结果为 1
-
-
cout <<(*p++); // 1
-
-
(*p)++ 先去指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2
-
cout << (*p)++; // 1
-
cout <<((*p)++) //2
-
*++p 先将指针p自增1(此时指向数组第二个元素),* 操作再取出该值
-
-
cout << *++p; // 2
-
cout <<(*++p) //2
-
-
++*p 先取指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元素变为2)
-
cout <<++*p; // 2
-
cout <<(++*p) //2
-
-
注意,上面的每条cout输出,要单独输出才能得到后面的结果。
文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。
原文链接:chenyu.blog.csdn.net/article/details/50526154
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)