C基础第17课 ++和--操作符分析

AI 模型训练核心方法论:零基础也能落地的 8 个关键阶段 本文是为 AI 零基础学习者打造的模型训练入门指南,以生活化语言拆解核心概念,规避专业术语壁垒。内容先通俗阐释模型训练、监督学习、数据集划分等基础概念,再按问题定义、数据准备、模型选择、环境搭建、训练、评估、调参、部署 8 个阶段,拆解完整训练流程,搭配 PyTorch 代码示例与实战案例,同时提供资源预算、常见问题解决方案及学习路径。指南强调数据的核心重要性,推荐新手优先使用迁移学习和免费 GPU 资源,兼顾理论与实操,帮助学习者快速上手,避开训练误区,独立完成从模型搭建到部署的全流程。 阅读详情

学习自狄泰软件学院唐佐临老师C语言课程,文章中图片取自老师的PPT,仅用于个人笔记。


在这里插入图片描述

在这里插入图片描述

实验1

#include <stdio.h> 

int main()
{
    int i = 0;
    int r = 0;

    r = (i++) + (i++) + (i++);

    printf("i = %d\n", i);
    printf("r = %d\n", r);

    r = (++i) + (++i) + (++i);

    printf("i = %d\n", i);
    printf("r = %d\n", r);

    return 0;
}

在VC编译器中:

在这里插入图片描述

    r = (i++) + (i++) + (i++);

vc编译器 是将i的值 先取出来,连续的取三次,每次都是0,再进行加法运算,所以r结果是0,最后又连续的做三次自增1的操作,所以i的值就成了3

在这里插入图片描述


 r = (++i) + (++i) + (++i);

在这里插入图片描述

VC编译器将i这个变量先自增了三次,变成了6,后面做 6+6+6 的加法 r 为 18


在GCC 编译器中

在这里插入图片描述

    r = (i++) + (i++) + (i++);

在这里插入图片描述

vc编译器 是将i的值 先取出来,连续的取三次,每次都是0,再进行加法运算,所以r结果是0,最后又连续的做三次自增1的操作,所以i的值就成了3


r = (++i) + (++i) + (++i);

在这里插入图片描述
先做两次自增,5+5 ,再做第三次自增 10+6

在这里插入图片描述
注意:在C语言中,只规定了++和–这两个操作符所对应的指令的相对执行次序,那么也就是说对于前置的++或者–操作符而言,我们的自增1或者自减1必须先做,之后再做取值就可以了,他只规定了这样的相对执行次序,并没有规定这两条指令必须连续的运行,也就是可以说被打断!!!!

在这里插入图片描述

在这里插入图片描述

实验 :贪心法

#include <stdio.h>

int main()
{   
    int i = 0;
  //  int j = ++i+++i+++i;// ++i++ ==> 1++ error 编译器不理解 1++这样写法
    //1++; //error
    int a = 1;
    int b = 4;
    int c = a+++b;// a+++b; ==> 1+4=5  a=2
    
    int* p = &a;
    
    b = b/*p;

    printf("i = %d\n", i);
    printf("j = %d\n", j);
    printf("a = %d\n", a);
    printf("b = %d\n", b);
    printf("c = %d\n", c);
      
    return 0;
}

// int j = ++i+++i+++i;// ++i++ ==> 1++ error 编译器不理解 1++这样写法
首先 编译器读取第一个 +,编译器发现一个 + 没有意义,所以继续读,又读到了一个+,变成了++,这时候编译器认识到 这肯定是一个前置运算符++操作,那显然这时候后面需要一个变量啊,所以很贪心的继续读入i,此时就变成了 ++i 了,理论上这个时候编译器就应该去计算这个 ++i 的值了,但是编译器很贪心 没有去处理,而是再去读了一个 +进来,变成了 ++i+,可以理解为 前置后再加一个值啊,所以编译器又继续读 读入了一个+,变成了 ++i++,这时候编译器就认为再继续读字符也不可能组成有意义的字符了,所以开始计算读入的字符。1++ error 编译器不理解 1++这样写法。

在这里插入图片描述

在这里插入图片描述
上面程序加上空格后
在这里插入图片描述

在这里插入图片描述

2月底速申!国家超算互联网免费算力全攻略|编程小白零消耗实操首测_2026-02-26 2月底速申!国家超算互联网免费算力全攻略|编程小白零消耗实操首测作为一名编程小白,我目前正在学习编译和运行 Qt 框架,也在逐步摸索开发环境的配置方法,目标是打造一款属于自己的个人效率工具。就在这时,我挖到了一个国家级硬核福利:国家超算互联网核心节点开放免费试运行!哪怕是零基础如我,也能申领到 100 卡时异构加速卡算力,关键是——2 月底前申请更稳妥,早占位早使用。 阅读详情

相关推荐

RK3568驱动XS9922B:AHD/CVBS双模摄像头兼容性实战

在嵌入式视频开发中,摄像头驱动的稳定性与兼容性往往决定项目交付质量。Linux内核的V4L2框架提供了统一的视频采集抽象,从v4l2_subdev子设备到media controller链路,再到用户态视频节点,每一层都需要精确配置。对于RK3568这类边缘计算平台,其MIPI CSI接口和自研ISP配合RKCIF,构成了完整的多路视频接入通路。当需要接入模拟视频解码芯片时,驱动设计就需同时考虑AHD高清协议与CVBS标清信号的模式切换、格式协商以及寄存器配置。XS9922B作为支持双模输入的解码芯片,可与

weixin_34216614的博客 350

【C语言进阶剖析】17.C语言中的 ++ 和 -- 操作符分析

一、++,-- 操作符的本质 ++ 和 -- 操作符对应两条汇编指令 前置 变量自增(减)1 取变量值 后置 取变量值 变量自增(减)1 二、++,-- 操作符使用分析 C 语言中只规定了 ++ 和 -- 对应指令的相对执行次序 ++ 和 -- 对应的汇编指令不一定连续运行 在混合运算中,++ 和 -- 的汇编指令可能被打断执行 ++ 和 -- 参与混合运算结果是不确定的。 笔试面试中的“奇葩”题 贪心法:++,-- 表达式的阅读技......

老胡的博客 7万+

oracle两节点RAC,由于gipc导致某节点crs无法启动问题分析

两节点RAC,其中1 节点集群CRS无法启动。经过分析原因为2节点gipcd进程异常,导致节点之间无法正常通信,重启2节点gipcd.bin后问题得以恢复。 从现象来看,是 ora.crsd...

cuibaye0692的博客 4536

C语言进阶剖析 17 ++ 和 -- 操作符分析

++ 和 – 操作符的本质 ++ 和 - - 操作符对应两条汇编指令 &amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;○ 前置 &amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;am

Linux Openharmony Android Graphics Stack! 2353

yolov8的Detect层详解(输出维度改动)

对于部署端需要拿到onnx的output进行后处理,但是基于anchor_free的yolov8输出是1*(4+cls)*8400,不是我们常见的ncwh格式,所以对Detect层进行了学习,分享一下体会。

yjcccccc的博客 2万+

博图HMI多语言文本列表一键生成攻略:从Excel模板到TIA Portal的完整流程

本文详细介绍了如何利用Excel模板和TIA Portal API实现博图HMI多语言文本列表的一键生成。通过标准化Excel模板设计、解析TIA Portal的XML结构,并结合C#代码实现自动化导入,大幅提升多语言项目的开发效率。特别适用于需要支持多语言版本的自动化设备HMI界面开发。

weixin_26934905的博客 218

17-++和--操作符分析

注:博客中内容主要来自《狄泰软件学院》,博客仅当私人笔记使用。 测试环境:Ubuntu 10.10 GCC版本:4.4.5 一、++,--操作符的本质 1)++和--操作符对应两条汇编指令 - 前置(先递增,再使用数值) *变量自增(减)1 *取变量值 - 后置(先使用数值,再递增) *取变量值 *变量自增(减)1 二、++,--...

第一大剑豪——索隆 295

ROS开发者的福音:用Anaconda虚拟环境解决Python包冲突(附完整配置流程)

本文为ROS开发者提供了使用Anaconda虚拟环境解决Python包冲突的完整方案。通过分析冲突根源,详细介绍了Miniconda安装、专用环境创建以及核心桥梁包的配置流程,并阐述了“混合环境运行”与“纯虚拟环境构建”两种实战工作流,帮助开发者实现ROS核心与特定Python库的和谐共存,从而提升开发效率和项目可维护性。

weixin_28835789的博客 339

【C语言进阶深度学习记录】十三 C语言中 ++和--操作符

文章目录1 ++和--操作符的本质2 总结 1 ++和–操作符的本质 ++ 和 - - 操作符对应两条汇编指令 前置: 变量自增(减)1 取变量值 后置 取变量值 变量字增(减)1 上述只是定义了 ++ 和 - - 操作符本身的取值与自增加减顺序。但是如果多个 ++ 或者 - - 操作符放在一起进行运算呢?像下面这样? 你觉得上述两个表达式的值分别是多少?或许...

厚积薄发 3088

习题加餐4. 冒险者工会

这个问题通过贪心算法解决,展示了贪心算法在解决一些优化问题中的强大能力。关键在于如何识别贪心选择的性质,并通过数学证明确保这种方法能够达到全局最优解。通过对问题的深入理解和逻辑推理,我们可以设计出有效的算法来解决问题,同时也需要注意代码实现中的细节,如排序和双指针的使用,以确保算法的效率和正确性。贪心算法的应用这个问题展示了贪心算法在实际问题中的应用。贪心算法通过在每一步选择当前最优的解决方案,期望最终达到全局最优解。该问题中,每次选择能力最接近但足以完成最难任务的冒险者,就是贪心选择的体现。

tang7mj的博客 1351

【华为OD机试真题】7、字符串筛选排序 | 机试真题+思路参考+代码解析(C++、Java、Py)

题目描述 >输入一个由N个大小写字母组成的字符串 按照ASCII码值从小到大进行排序 查找字符串中第K个最小ASCII码值的字母(k>=1) 输出该字母所在字符串中的位置索引(字符串的第一个位置索引为0) k如果大于字符串长度则输出最大ASCII码值的字母所在字符串的位置索引 如果有重复字母则输出字母的最小位置索引

KJ.JK 2267

复习c语言深度剖析(17)—++和--操作符分析

++和—操作符对应的两条汇编指令 前置++或–:变量自增(减)1,然后取变量值 后置++或–:取变量值,然后变量自增(减)1 2.++, – 操作符使用分析 一对令人头疼的兄弟  nt i = 0;       (i++) + (i++) + (i++);...

weixin_43478148的博客 180

R语言深度学习实战:基于YOLO的目标检测

目标检测是计算机视觉领域的一项任务,旨在识别图像或视频中的物体,并确定它们的位置。与图像分类不同,目标检测要求模型能够识别多个物体,并为每个物体提供边界框(bounding box)的位置信息。这种任务在众多应用中都具有重要价值,例如自动驾驶、安防监控、物体跟踪等。YOLO(You Only Look Once)是一种非常流行的目标检测算法,它在速度和准确性之间取得了良好的平衡。与传统的目标检测方法不同,YOLO将目标检测任务视为回归问题,直接从输入图像中预测目标的类别和位置信息。

YOLO 330

【C语言学习记录17】++和--操作符分析

++和—操作符对应两条汇编指令。 1)前置: 变量自增(减)1 取变量值 2)后置 取变量值 变量自增(减)1 gcc结果: vs结果: vs和gcc不同(灰色地带) 结果分析:vs先加后自增。 为什么结果不确定? 1)C语言中只规定了++和--对应指令的相对执行程序; 2)++和--对应的汇编指令不一定...

haibing_x的博客 243

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【C语言进阶剖析】17、++ 和 --操作符分析

1 ++ 和 – 操作符的本质 ++ 和 – 操作符对应两条汇编指令如下: 前置:先对变量自增(减)1,再取变量值 后置:先取变量值,再对变量值自增(减)1,取的是临时变量的值 下面看一个令人头疼的问题: int i = 0; (i++) + (i++) + (i++); (++i) + (++i) + (++i); ...

桑凯旋的博客 1137

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

第17课 ++和--操作符分析

++和--操作符对应两条汇编指令: 上图中的表达式,我们的初步分析如下: 完整的示例程序如下: 1 #include <stdio.h> 2 3 int main() 4 { 5 int i = 0; 6 int r = 0; 7 8 r = (i++) + (i++) + (i++...

diaozhiwa5526的博客 115

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

c语言深度剖析(17)—++和--操作符分析

1. ++和—操作符对应的两条汇编指令 前置++或--:变量自增(减)1,然后取变量值 后置++或--:取变量值,然后变量自增(减)1 2.++,-- 操作符使用分析 一对令人头疼的兄弟 nti=0; (i++)+(i++)+(i++); (++i)+(++i)+(++i); #include <stdio.h> in...

小虾米编程 1145

C语言进阶课程学习记录-第17课 - ++和--操作符分析

本文学习自狄泰软件学院 唐佐林老师的 C语言进阶课程,图片全部来源于课程PPT,仅用于个人学习记录。编译器读入空格后立即对之前读入的符号进行处理。++和–操作符在混合运算中的行为可能不同。空格可以作为C语言中一个完整符号的休止符。编译器通过贪心法处理表达式中的子表达式。

qq_35429166的博客 203

C语言进阶第17式:++和--操作符分析

++和--操作符的使用注意事项?

东川 427

17_++和--操作符分析 & 18_三目运算符和逗号表达式

17_++和–操作符分析 1、++和–分析 ++和–操作符分别对应着两条汇编指令; 前置:变量自增(减)1,取变量值; 后置:取变量值,变量自增(减)1; 程序示例: #include <stdio.h> int main() { int i = 0; int r = 0; r = (i++) + (i++) + (i++); printf("i = %d\n", i); printf("r = %d\n", r); r = (+

chenqiang_ace的博客 304

【C】 17_++ 和 -- 操作符分析

++ 和 -- 操作符的本质 ++ 和 -- 操作符对应两条汇编指令 前置 变量自增 (减) 1 取变量值 后置 取变量值 变量自增 (减) 1 ++ 和 -- 操作符使用分析 一对令人头疼的兄弟 int i = 0; (i++) + (i++) + (i++); (++i) + (++i) + (++i); 两...

weixin_33939843的博客 100

C语言笔记 第十七课 ++和-- 操作符分析

第十七课 ++和-- 操作符分析 ++,- -操作符的本质 ++和- -操作符对应两条汇编指令 前置 变量自增(减)1 取变量值 后置 取变量值 变量自增(减)1 ++,- -操作符使用分析 int i = 0; (i++) + (i++) + (i++); 0+1+2=3 i =&gt; 3 (++i) + (++i) + (++i); 4+5+6=15 i =&gt; 6 g...

YLC_慕类的博客 342

C语言简明讲解操作符++和--的使用方法

原因就是编译器发现 ++i 后由于贪心,会继续往下找,发现 ++i+ 后编译器觉得符合语法规则,继续往下找,当出现 ++i++时编译器感觉不对,开始计算,就变成 1++,这是不合法的,所以编译器就会报错。空格可以作为C语言中一个完整符号的休止符编译器读入空格后立即对之前读入的符号进行处理。这是由于不同编译器对 ++ 和 -- 的相对哦执行次序不一样。++ 和 -- 参与混合运算结果是不确定的。++ 和 -- 操作符对应两条汇编指令。贪心法:++,-- 表达式的阅读技巧。笔试面试中的“奇葩”题。

2501_94114815的博客 194

C语言操作符篇

本篇博客到这里就结束了,希望能够帮到各位刚接触C语言的小萌新们,下篇博客将继续讲解C语言的相关知识。

2401_87845450的博客 551

C语言++a与a++的实现机制与操作符结合优先级

看到一道“经典Linux C“面试题,关于左值和右值的。 华为笔试题 1.写出推断ABCD四个表达式的是否正确, 若正确, 写出经过表达式中 a的值(3分) int a = 4; (A)a += (a++); (B) a += (++a) ;(C) (a++) += a;(D) (++a) += (a++); a = ? 答:C错误,左側不是一个有效变量。不能赋值,可改为(+...

weixin_30517001的博客 198

5.17_操作符详解3(完)

关系操作符,逻辑操作符,条件操作符,逗号表达式,下标引用、函数调用和结构成员

m0_71643618的博客 922
上一篇: C基础第16课 位运算符分析
下一篇: C基础第18课--三目运算符和逗号表达式
Ma浩然
博客等级 码龄9年 1万+粉丝 462原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ma浩然

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值