n++和++n的区别是什么?

 我来答
亦是如此
高粉答主

2021-11-26 · 往前看,不要回头。
亦是如此
采纳数:6378 获赞数:544579

向TA提问 私信TA
展开全部

一、运算顺序不同

1、n++:后执行自增运算。

2、++n:先执行自增运算。

二、内存顺序不同

1、n++:先访问参数n,之后将参数n加1。

2、++n:先将参数n加1,之后再访问参数n。

三、结果不同

1、n++:输出的结果为n。

2、++n:输出的结果为n+1。

特殊情况:

在同一条语句中,被操作的数出现多次是可以通过编译的,但是其在C++ Standard等语言标准中被定义为"Undefined behavior"(不确定的行为),即不同的编译器或编译器版本所编译得到的机器码可能不尽相同。

不推荐在同一条语句中使被操作的数出现多次,这不仅仅将导致程序的含义难以理解,可读性大幅降低,同时可能导致不同的编译器或编译器版本得到不同的结果。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式