news 2026/7/2 13:59:32

i++和++i的区别总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
i++和++i的区别总结

i++ 和 ++i 完整区别

1. 核心定义

  1. ++i前置自增先把 i 自身 +1,再返回自增后的新值。
  2. i++后置自增先返回 i 原来的值,运算结束后再把 i +1。

2. 分开单独写(无赋值、无表达式时,两者无区别)

int i = 2; ++i; // i=3 int j = 2; j++; // j=3

只单独一句自增,结果完全一样。

3. 放进表达式 / 赋值,差异巨大(重点)

示例 1:前置 ++i

int i = 2; int a = ++i;

执行步骤:

  1. i = i + 1 → i=3
  2. a = i → a=3 结果:i=3,a=3

示例 2:后置 i++

int i = 2; int a = i++;

执行步骤:

  1. 先把 i 当前值赋值给 a → a=2
  2. 再 i = i + 1 → i=3 结果:i=3,a=2

4. 经典对比代码

int x=5; int m = ++x; // x先变6,m=6 int y=5; int n = y++; // n先拿5,y最后变成6

5. 循环中使用(for 循环常规场景无差别)

// 两种效果一模一样 for(int i=0; i<10; i++){} for(int i=0; i<10; ++i){}

for 的第三段只是单独自增,不参与取值,性能上现代编译器会优化成一样代码。

6. 性能小知识(C++)

  • ++i:直接返回自身引用,无临时变量
  • i++:需要保存旧值,生成临时副本
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/2 13:48:03

如何将闲置电视盒子改造成全能服务器:Armbian系统终极指南

如何将闲置电视盒子改造成全能服务器&#xff1a;Armbian系统终极指南 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk35…

作者头像 李华
网站建设 2026/7/2 13:45:27

抖音无水印下载神器:5分钟快速上手完整指南

抖音无水印下载神器&#xff1a;5分钟快速上手完整指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批…

作者头像 李华
网站建设 2026/7/2 13:44:05

APT组织MuddyWater攻击关键基础设施的防御实战指南

1. 项目概述&#xff1a;当“浑水”摸向工业命脉最近几年&#xff0c;安全圈里一个代号为“MuddyWater”的APT组织&#xff0c;其活动轨迹越来越频繁地出现在针对能源、交通、制造等关键基础设施的威胁报告中。这个组织名字直译过来就是“浑水”&#xff0c;其攻击手法也确实如…

作者头像 李华
网站建设 2026/7/2 13:43:04

OWASP Top 10 2025指南:从安全架构到自动化部署的深度防御实践

1. 项目概述&#xff1a;为什么我们需要一份全新的OWASP Top 10指南&#xff1f;如果你是一名开发者、架构师或者安全工程师&#xff0c;过去几年里&#xff0c;你肯定不止一次地听过或看过“OWASP Top 10”这个列表。它就像一份安全领域的“必读清单”&#xff0c;告诉你当前最…

作者头像 李华