社区
工具平台和程序库
帖子详情
p++和++p的又一个的区别
snnn
2004-02-21 06:51:18
关于这两个定义上的区别大家都知道
我刚又发现一个很重要的区别
假如p的类型是T
p++的返回值类型是T&
而++p通常情况下没有返回值
...全文
67
48
打赏
收藏
p++和++p的又一个的区别
关于这两个定义上的区别大家都知道 我刚又发现一个很重要的区别 假如p的类型是T p++的返回值类型是T& 而++p通常情况下没有返回值
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
48 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
*p
++
与*(p
++
)与(*p)
++
的
区别
*p
++
与(*p)
++
与 *(p
++
)的
区别
指针的概念有点抽象,所以我刚开始的时候也有点难理解,特别是*p
++
与 *(p
++
)的
区别
,不过写多了就好了。 先说说它们的含义: *p
++
是指针p所指的值然后指针加一; *(p
++
)与上面一样; (*p)
++
是指针p所指向的变量的值加一; 重点来了!!! *p
++
与 *(p
++
)的语句是一样的,返回的值也是一样的,但其实它们最后的结果是不一样的,为什...
*p
++
、*(p
++
)、*
++
p、*(
++
p)、(*p)
++
、
++
*p
区别
和用法
按从右向左的结合原则,
++
*p求值的顺序即为先进行“*”,然后再进行“
++
”运算,即先取出*p的值并赋给a,然后将*p的值arr[1]加1,但*p指向的内容不变。由于括号内优先运算,所以表达式先取出*p(假设为arr[1])的值并赋给a,然后讲*p的值arr[1]所代表的内容加1。再根据p
++
的运算先取值再自增,即为先取*p,然后进行p
++
的自增操作。再根据
++
p的运算先自增再取值,即为先进行p
++
的自增操作,然后取*p。此时*p指向的内容会发生改变,变为数组的下一位。--变量名/变量名--
(*p)
++
和*(p
++
)和*p
++
的
区别
转载自:https://blog.csdn.net/judongbin123/article/details/83049346 (*p)
++
和*(p
++
)和*p
++
的
区别
*(p
++
)究竟是谁
++
,是p的地址
++
,还是p所指的东西的地址
++
前缀递增递减和*优先级相同,从右到左; 后缀递增递减比前缀优先级高,从左到右。 比如 1 2 intarr[5]={1,3,5,7,9}; int*p=arr; *
++
p:p先自...
*p
++
、*(p
++
)、(*p)
++
、*
++
p、
++
*p的
区别
*p
++
、*(p
++
)、(*p)
++
、*
++
p、
++
*p的
区别
最近在刷题的时候遇到前缀自增、后缀自增以及取值符号之间的组合问题,这里记录一下: 问题提出 之前我一直理解的是前缀
++
优先级高于后缀
++
,然后我在翻阅C
++
优先级顺序表时却发现后缀
++
的优先级其实是高于前缀
++
和*的,但是为什么我们通常都说后缀
++
是等当前表达式完成再自增呢? 解答 然后我看了Effective C
++
发现: 也就是...
*p
++
和(*p)
++
表达式典型场景*p
++
遍历数组/链表(如),需逐个访问元素并移动指针(*p)
++
💡调试建议:若发现指针意外移动或值未更新,优先检查是否混淆了*p
++
和(*p)
++
。理解这些差异的核心是分清操作对象(指针地址 vs. 指针指向的值)和运算符优先级。实际编码时,建议显式使用*(p
++
)或(*p)
++
避免歧义。
工具平台和程序库
24,856
社区成员
27,330
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章