为啥每个语音的printf(“%d%d%d%d“,i,j,i++,j++)不一样

news2024/11/29 2:40:47

题目来源一位考研同学的题目。

第一眼:小子,这都不会😀
第二眼:wok,咋没有选项😢

        作为一个大一学C语音,大二学Java的同学来说,我一看就觉得肯定是11 6 11 6

        结果很遗憾,没有这个选项。

        我觉得不应该呀,于是我写了一段java代码跑了一次。


Java代码

        还好,我天天睡觉没有睡到连JAVA都不会的地步,但是我毕竟也是大一学过C语音的,我明明记得i++是后自增。

        那到底是怎么回事,还是实现一下好了,由于之前一直学的C++而且我记得两个应该差不多,就输出几个数字而且,能有多大区别。


C++语言代码

        我了个去,咋还是这样子,算了,还是老老实实写C吧。


C语音代码

        这次就不一样了,后来我才知道,printf里面还有顺序的说法,大致就是从左往右来执行。具体为啥,请恕我才疏学浅,如果有大佬知道的话可以在评论区给我解答一下吗,感激不尽。

#include <stdio.h>

int main() {
    int i = 11, j = 6;
    printf("%d %d %d %d", i, j, i++, j++);
    // 1、 先运行了j++,此时由于是右自增,于是先显示了j的值,也就是6,然后j再自增了,此时j=7
    // 2、 第二个运行了i++,此时由于是右自增,于是先显示了i的值,也就是11,然后i再自增了,j=12
    // 3、 然后输出了j的值,也就是1第一步的7
    // 4、 最后输出了i的值,也就是12
    return 0;
}

        以上是我看了一些网上的资料给出的推测,所有我打算验证一下,看看是不是所谓的从右到左执行。

#include <stdio.h>

int main() {
    int i = 11, j = 6;
    printf("%d %d %d %d %d %d", i, j, i++, j++, ++i, ++j );
    return 0;
}

        如果刚刚的推断是正确的,那么结果应该是:13 8 12 7 12 7。

        那么还是老样子,看看运行结果

        

        沃趣,咋回事,咋又不对,我看看AI咋说。

        到现在人更懵了,于是我试试更换GCC版本看看是否如同上面所说

        好吧,综上所述,当编译器为Clang时,出现了不一样的结果,这个结果比较好接受一些,从左往右算了一遍。

        后面又搜了一下,计算是从右往左,输出是从左往右

        总是觉得只能看出个大概,不能明白到底是怎么回事。

比如这个

  • i:最终值为 9(所有操作后的值)。
  • i++:在 i 增加到 9 之前为 8。
  • ++i:在 i 从 8 增加到 9 之后。
  • i++:在前面的操作之后为 6(操作后的值)。
  • ++i:最终值为 9(最后一次增加后的值)。

但是我总感觉这个解释并不好,不知道有没有大佬可以给我讲解一下呀!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2060075.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微服务开发相关问题

微服务开发相关问题 服务注册nacos 2.X注册问题[Nacos Config] config[dataIddatasource.yml, groupDEFAULT_GROUP] is empty 参考 持续更新… 服务注册 nacos 2.X注册问题 [Nacos Config] config[dataIddatasource.yml, groupDEFAULT_GROUP] is empty 因为&#xff1a;# 由于…

C++第十二弹 -- STL之list模拟实现

文章索引 前言模拟实现list1. ListNode节点类2. list的迭代器封装3. 反向迭代器4. list类的模拟实现测试代码 list的反向迭代器总结 前言 通过模拟实现可以让我们更加深刻的理解C底层STL的实现逻辑, 本篇就对list的底层进行模拟实现. 博客主页: 酷酷学!!! 点击关注 共同进步!…

影响五金精密零件加工价格的因素

在制造业中&#xff0c;五金精密零件的加工价格受到多种因素的影响。了解这些因素&#xff0c;对于企业合理控制成本、选择合适的加工供应商至关重要。 首先&#xff0c;零件的设计复杂度是一个重要因素。复杂的设计通常需要更先进的加工技术和更多的加工工序。例如&#xff0c…

intel ECI作为ACRN VM使用dpdk(vfio和iommu问题)以及img扩容

ACRN虚拟机内IOMMU 对非虚拟机而言&#xff0c;只要在BIOS里开启VT-d就可以用iommu去映射vfio使用DPDK&#xff0c;但是在虚拟机中即便BIOS开启了VT-d&#xff0c;它也传不到VM中。因此这个帖子解决一下这个问题。 在ACRN的launch脚本中需要passthru两个网卡&#xff0c;一个用…

C++ TinyWebServer项目总结(8. 高性能服务器程序框架)

《Linux 高性能服务器编程》一书中&#xff0c;把这一章节作为全书的核心&#xff0c;同时作为后续章节的总览。这也意味着我们在经历了前置知识的学习后&#xff0c;正式进入了 Web 服务器项目的核心部分&#xff01; 前置内容回顾&#xff1a; 1. C TinyWebServer项目总结&…

《深入浅出多模态》(九)多模态经典模型:MiniGPT-v2、MiniGPT5

🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系的学习资料,配有全面而有深度的专栏内容,包括不限于 前沿论文解读、资料共享、行业最新动态以、实践教程、求职…

【Datawhale AI夏令营第四期】 浪潮源大模型应用开发方向笔记 Task03 大咖项目分享 人话八股文Bakwaan_Buddy项目开发尝试

【Datawhale AI夏令营第四期】 浪潮源大模型应用开发方向笔记 Task03 人话八股文Bakwaan_Buddy项目开发尝试 Idea: 我们草台班子目前的想法是解决大家计算机学院毕业面临的BUG——不爱背、背不下来八股文&#xff0c;觉得枯燥、烦、工作了用不着&#xff0c;反正就是知识他不…

triton之flaggems的point-wise分析

一 流程 1 代码分析 1.1 parameter_ref_for_wrapper 对应 二 拾遗 报错 1 缺少@triton.jit File "/opt/conda/envs/py38/lib/python3.8/site-packages/Open_triton/utils/dynamic_index_put.py", line 676, in decorator num_inputs = len(fn.arg_name…

提高谷歌引擎搜索排名一连串儿丝滑小连招

在运营独立网站时&#xff0c;最令人沮丧的事情莫过于网站未能获得谷歌的高排名&#xff0c;尽管付出了诸多努力。由于互联网上内容繁多&#xff0c;找到在谷歌上获得排名的确切方法几乎是不可能的。谷歌有多个排名因素&#xff0c;但这些因素并非孤立存在&#xff0c;而是由多…

java如何判断一个列表中是否存在大于1000的数字

个人名片 &#x1f393;作者简介&#xff1a;java领域优质创作者 &#x1f310;个人主页&#xff1a;码农阿豪 &#x1f4de;工作室&#xff1a;新空间代码工作室&#xff08;提供各种软件服务&#xff09; &#x1f48c;个人邮箱&#xff1a;[2435024119qq.com] &#x1f4f1…

帆软报表设计器函数相关问题

官方漏洞声明&#xff1a;安全漏洞声明- FineReport帮助文档 - 全面的报表使用教程和学习资料 最近出的两个漏洞&#xff0c;官方已修复&#xff0c;问题有些相似&#xff0c;都是通过设计器函数来构造rce。尤其第二个sql注入造成RCE的漏洞还是挺有意思的&#xff0c;记录一下…

地表最强Ai视频创作工具?Pika保姆级注册使用指南

大家好&#xff01;我是YUAN。 今天&#xff0c;我要带大家探索一个全新的领域——AI视频生成。Pika Labs以其独特的魅力和强大的功能&#xff0c;成为了众多创作者的新宠。准备好了吗&#xff1f;让我们一起探索Pika Labs的无限可能。 一、Pika Labs是什么&#xff1f; Pika …

fl studio24.1.1中文完整版,直接安装激活!免费分享

&#x1f389; FL Studio 24.1.1 中文版本&#xff0c;音乐制作人的福音&#xff01; 嗨&#xff0c;亲爱的音乐制作爱好者们&#xff01;&#x1f44b; 如果你对音乐创作有着无限的热爱&#xff0c;那你绝对不能错过 FL Studio 24.1.1 中文版本这款神器。它不仅是一个音乐制作…

跟着 iLogtail 学习高质量软件建设

作者&#xff1a;余韬 本文根据 iLogtail PMC 成员余韬 2024 年 6 月 26 日在 DBAPlus 社群的公开直播《云上千万级可观测 Agent SRE 实践》整理而成。 引言 近年来&#xff0c;关于可靠性工程这一话题的热议不断升温&#xff0c;这主要归因于当前形势的显著变化。 首先&…

如何备份电脑所有数据?四个方法实现一键备份所有数据

备份电脑所有数据是一个重要的步骤&#xff0c;可以确保在数据丢失或损坏时能够迅速恢复。以下是一些备份电脑所有数据的方法&#xff0c;对于有重要数据的企业来说非常实用。 一、使用外置存储设备 选择设备&#xff1a;首先&#xff0c;选择一个容量足够大的外置存储设备&am…

肿瘤免疫治疗队列转录组及单细胞数据下载-TIGER

目录 转录组数据 ​编辑单细胞数据 TIGER不仅提供了多种在线分析&#xff0c;还提供了多个肿瘤免疫治疗队列转录组及单细胞数据下载。 TIGER:肿瘤免疫治疗&#xff08;转录组单细胞免疫&#xff09;_肿瘤免疫治疗基因表达资源tiger-CSDN博客 转录组数据 TIGER: Tumor Immu…

构建全面的用户增长蓝图

在竞争日益激烈的SaaS市场中&#xff0c;用户增长已成为企业持续繁荣的关键驱动力。为了实现这一目标&#xff0c;企业不仅需要制定高效的用户增长策略&#xff0c;还需要借助先进的工具和技术来加速这一过程。 1. 明确目标市场与用户画像 首先&#xff0c;SaaS企业需要深入了…

PNG转BMP要怎么操作?分享四种不同的转换方案

PNG转BMP要怎么操作&#xff1f;PNG和BMP是两种常见的图像格式&#xff0c;PNG格式以其无损压缩和支持透明度而闻名&#xff0c;而BMP格式则是一种未经压缩的位图格式&#xff0c;常用于操作系统和应用程序内部。有时出于兼容性或特定需求的原因&#xff0c;你可能需要将 PNG 文…

【全网最真实测评】随身WiFi值得入手吗?自费入手华为、中兴、格行、上赞4款随身WiFi,内含国产4款热门随身WiFi推荐!(最实用、最高性价比!)

随身WiFi的风越吹越大&#xff0c;市场乱象也更变本加厉。作为一名资深随身WiFi使用者&#xff0c;接触过太多的随身WiFi产品&#xff0c;越是了解这个行业黑幕&#xff0c;就越对无良商家夸大宣传、虚标限速&#xff0c;甚至售卖二手产品的行为深恶痛绝&#xff01; 本篇测评涉…

搭建高可用的微信小程序服务(Alibaba Cloud Linux 3)

本文介绍如何在阿里云云服务器ECS上基于Alibaba Cloud Linux 3操作系统搭建高可用的微信小程序服务端&#xff0c;并在本地开发一个名为ECS小助手的简单微信小程序。通过远程调用部署在ECS上的服务端&#xff0c;实现在小程序中输入框输入ECS实例ID查询实例详细信息的功能。 步…