首页 > 其他分享 >答疑帖

答疑帖

时间:2024-11-13 15:18:52浏览次数:1  
标签:输出 ++ 答疑 int printf 操作 进行

\[\large答疑帖 \]

辨析i++++i

这两个表达式基本相同,均可对i进行加一操作,但是当需要访问表达式的值时,会有略微不同,请看以下代码:

#include <stdio.h>

int main()
{
    int i = 0;
    printf("%d\n", i++);
    printf("%d\n", ++i);
    return 0;
}

输出结果如下:

0
2

这是怎么回事呢?

这两个表达式均可以分为两个操作:返回 \(i\) 的值、对 \(i\) 进行加 \(1\) 操作。但是执行操作的顺序不同,i++是先返回 \(i\) 的值,然后再对\(i\) 进行加 \(1\) 操作;而++i是先对 \(i\) 进行加 \(1\) 操作,然后再返回 \(i\) 的值。下面借助刚才的代码进行详细解释:

int i = 0;
printf("%d\n", i++);\\先返回i的值输出i(输出0),然后再对i进行+1操作
\\执行完后,i的值为1
printf("%d\n", ++i);\\先对i进行+1操作(输出1),然后再返回i的值输出i
\\执行完后,i的值为1

记忆方法:++在 \(i\) 前则先进行 \(+1\) 操作;++在 \(i\) 后则后进行 \(+1\) 操作

i----i同理

标签:输出,++,答疑,int,printf,操作,进行
From: https://www.cnblogs.com/cxmn/p/18544050

相关文章

  • ssm毕设在线学习辅导与答疑系统程序+论文+部署
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、研究背景随着信息技术的飞速发展,互联网在教育领域的应用日益广泛。传统的学习辅导与答疑方式受时间和空间的限制,已无法满足现代学习者多样化的需求。例如......
  • 【开源免费】基于SpringBoot+Vue.JS课程答疑系统(JAVA毕业设计)
    博主说明:本文项目编号T070,文末自助获取源码\color{red}{T070,文末自助获......
  • flask基于java的课程答疑系统设计(毕设源码+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于课程答疑系统的研究,现有研究主要集中在系统的基本功能构建与实现方面。在国内外,已经有不少课程答疑系统被开发出来,并且在学校和教......
  • node.js毕设学生在线答疑系统的设计与实现(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于学生在线答疑系统的研究,现有研究主要集中在在线教育平台的构建、学生学习行为分析等方面,专门针对在线答疑系统设计与实现的研究较少。在国内外,在线......
  • 基于node.js+vue基于Android的答疑预约系统的设计与实现前(开题+程序+论文)计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容选题背景关于答疑预约的研究,现有研究主要集中在传统的线下答疑预约或者基于网页端的答疑预约方式,专门针对基于Android平台的答疑预约系统的研究较少。随着移动设备的......
  • 基于Java+SpringBoot+Vue的课程答疑系统
    基于Java+SpringBoot+Vue的课程答疑系统前言✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌......
  • [答疑]是不是互联网更适合用DDD
    阿俊2021-11-413:11您发的第八章有一个调查一篇DDD文章提到几个类,我留意看过的文章和演讲,是像您说的那样!我还发现作者除了TW公司的人,还有大部分是互联网公司,而且都会提到微服务。我想问您的问题是,是不是互联网更适合用DDD,微服务架构更适合用DDD?UMLChina潘加宇你说的这个问......
  • redis高级篇之IO多路复用select方法简介 第174节答疑
    1、bitmap最大1024位,一个进程最多只能处理1024个客户端2、&rset不可重用,每次socket有数据就相应的位会被置位3、文件描述符数组拷贝到了内核态(只不过无系统调用切换上下文的开销。(内核层可优化为异步事件通知)),仍然有开销。select调用需要传入fd数组,需要拷贝一份到内核,高......
  • redis高级篇之IO多路复用IOMultiplexing从学术到人话版 172节答疑
    ref:selectRecieve.png这图什么意思,select是阻塞的,然后呢?这张图展示了I/O复用模式下的工作流程,特别是使用`select`系统调用进行I/O复用的情况。在这种模式下,`select`用于监听多个文件描述符(如套接字),等待其中任何一个变为可读、可写或有异常发生。以下是图中各部分的详......
  • redis第152节答疑 redis源码分析String重要总结
    redis的string类型,如果数字大于10000,就不去共享整数中去取,然后就变成了embstr或者raw,为什么不是new一个redisobject,并且编码为int对于Redis的字符串类型(String),当字符串表示的是一个整数值时,Redis会根据具体情况选择不同的编码方式。对于数字大于10000的情况,Redis不会将其编......