C++逗号运算符与逗号表达式

【C/C++】逗号表达式、算术运算符优先级 11 && 逻辑与 表达式&&表达式 左到右 双目运算符。12 || 逻辑或 表达式||表达式 左到右 双目运算符。7 == 等于 表达式==表达式 左到右 双目运算符。9 ^ 按位异或 表达式^表达式 左到右 双目运算符。10 | 按位或 表达式|表达式 左到右 双目运算符。8 & 按位与 表达式&表达式 左到右 双目运算符。6 > 大于 表达式>表达式 左到右 双目运算符。3 / 除 表达式/表达式 左到右 双目运算符。4 + 加 表达式+表达式 左到右 双目运算符。 阅读详情

【转载】http://c.biancheng.net/cpp/biancheng/view/112.html


C++将赋值表达式作为表达式的一种,使赋值操作不仅可以出现在赋值语句中,而且可以以表达式形式出现在其他语句(如输出语句、循环语句等)中。这是C++语言灵活性的一种表现。


请注意,用cout语句输出一个赋值表达式的值时,要将该赋值表达式用括号括起来,如果写成“cout<<a=b;”将会出现编译错误。

C++提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如
    3+5, 6+8
称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为:
    表达式1, 表达式2
逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。如,逗号表达式
   a=3*5, a*4
赋值运算符的优先级别高于逗号运算符, 因此应先求解a=3*5(也就是把“a=3*5”作为一个表达式)。经计算和赋值后得到a的值为15,然后求解a*4,得60。整个逗号表达式的值为60。

一个逗号表达式又可以与另一个表达式组成一个新的逗号表达式,如
    (a=3*5, a*4), a+5
逗号表达式的一般形式可以扩展为:
    表达式1, 表达式2, 表达式3, …, 表达式n
它的值为表达式n的值。

逗号运算符是所有运算符中级别最低的。因此,下面两个表达式的作用是不同的:
    x=(a=3, 6*3)
    x=a=3, 6*a

其实,逗号表达式无非是把若干个表达式“串联”起来。在许多情况下,使用逗号表达式的目的只是想分别得到各个表达式的值,而并非一定需要得到和使用整个逗号表达式的值,逗号表达式最常用于循环语句(for语句)中。

在用cout输出一个逗号表达式的值时,要将该逗号表达式用括号括起来,如:
    cout<<(3*5, 43-6*5, 67/3)<<endl;

C和C++语言表达能力强,其中一个重要方面就在于它的表达式类型丰富,运算符功能强,因而使用灵活,适应性强。



C++语言中的逗号表达式,逗号运算符符 在许多情况下,使用逗号表达式的目的只是想分别得到各个表达式的值,而并非一定需要得到和使用整个逗号表达式的值,逗号表达式最常用于循环语句(for语句)中。C++将赋值表达式作为表达式的一种,使赋值操作不仅可以出现在赋值语句中,而且可以以表达式形式出现在其他语句(如输出语句、循环语句等)中。请注意,用cout语句输出一个赋值表达式的值时,要将该赋值表达式用括号括起来,如果写成“cout 阅读详情

相关推荐

避坑指南:用Adams做滚珠丝杠仿真时90%人会遇到的3个建模错误

本文针对使用Adams进行滚珠丝杠动力学仿真时常见的三大建模错误,提供了详细的避坑指南。重点解析了如何避免因直接导入CAD几何体导致的性能与精度问题,科学设置接触参数以提升计算效率与结果平滑度,以及通过规范的命名与组织管理模型,确保仿真过程高效可靠。

gin88的博客 573

C/C++编程知识:运算符(六)丨逗号()运算符知识详解

在C和C ++中,逗号(,)可以在两种情况下使用: 1)逗号作为运算符: 逗号运算符(由Token表示)是一个二进制运算符,它求值第一个操作数并舍弃结果,然后求值第二个操作数,并返回该值(和类型)。逗号运算符在所有C运算符中具有最低的优先级,并且充当序列点。 C语言: int i = (5, 10); int j = (f1(), f2()); 2)逗号作为分隔符: 与函数调用和定义,宏,变量声明,枚举声明和类似构造之类的函数一起使用时,逗号充当分隔符。 C语言: int a ...

致力于C语言C++知识分享! 3362

1.4 《SST通用技术规范》整体框架与核心条款解读

本小节以**GB/T《电力电子变压器通用技术要求》**(固态变压器SST核心通用规范)为核心依据,结合电力电子变压器技术特性与工程应用边界,系统解析规范的整体章节框架、层级逻辑与强制性/推荐性核心条款,明确规范与传统工频变压器标准的差异,为SST拓扑设计、性能验证、出厂检验与工程落地提供标准化依据。全文以标准原文、期刊文献数据与试验规范为支撑,无主观推演与感性表述。

技术工作者 1695

【C/C++ 逗号表达式】C/C++中的逗号运算符

逗号运算符(`,`)在C/C++中是一个经常被忽视但实际上非常有用的运算符。它用于将多个表达式串联在一起,这些表达式将从左到右依次执行。最后一个表达式的值将作为整个逗号表达式的值返回。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1793

linux基线检查、基线加固、安全漏扫、系统漏洞、centos7、文尾部附脚本

等保三级-CentOS Linux 7合规基线检查 风险分类:系统-等保三级-CentOS Linux 7合规基线检查 检测项说明: CentOS Linux 7合规基线检查,对标中国等保2.0第三级等级保护基本要求部分检查项目,仅供参考 检查项目 : 应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换 加固建议: 1、执行`cat /etc/shadow | awk -F: '($2 == "" ) { print $1}' `, 查看空密码账户并处理; 2、

swindy博客 5624

Vue3 - Element Plus 全局修改更换主题色配置详细教程,element-plus自定义主题色全局替换主色调强力解决方案,支持动态修改主题颜色/动态皮肤,将默认蓝色主题色更换为其他颜色!

vue3,nuxt3,element-plus,组件库,主题色,修改主题颜色,更换主题色,如何修改组件默认主题蓝色,项目主题色定制,修改失败,主题色覆盖不了,:root直接修改,hover颜色没改,自定义主题色,vue3全局设置elementPlus主题色最新详细修改教程,怎么修改全局的颜色,scss变量,覆盖原来的主题色改为自己的颜色,统一替换,有没有好办法,颜色不变,失败,无效,动态主题切换,主题颜色怎么在项目里直接改,plus主题色更换,覆盖默认主题色,最强最好用,设置主题色,换肤,皮肤,动态更换

🏆 前端领域优质创作者 1万+

【C++基础入门】34.C++中的逗号操作符

文章目录 一、逗号操作符 二、重载逗号操作符 三、小结 一、逗号操作符 逗号操符( , )可以构成逗号表达式 逗号表达式用于将多个子表达式连接为一个表达式 逗号表达式的值为最后一个子表达式的值 逗号表达式中的前 N-1 个子表达式可以没有返回值 逗号表达式按照从左向右的顺序计算每个子表达式的值 二、重载逗号操作符 在C++ 中重载逗号操作符是合法的 使用全局函数对逗号操作符进行重载 重载函数的参数必须有一个是类类型 重载函数的返回值类型必须是引用 问题的本.

老胡的博客 3399

实操微信支付,适合第一次接通微信支付的同学

我的实际操作命令如下:就会生成图3中多出来的file文件夹,/Users/camel/cert/xxxxxx_cert/file/wechatpay_5A4xxxxxxxxxx9.pem,wechatpay_xxxxx5A4849E9.pem就是微信支付平台证书,也是程序真正需要的。•注意:我的操作说明,我是把下载好的 CertificateDownloader.jar 文件,放在了解压证书的目录里(图3)。//下面的静态参数要仔细看下面的解释,否则只会调用别人写好的方法,压根学不会0-1接入微信支付。

wjianwei666的专栏 525

C/C++ 中的逗号运算符

在C语言中逗号运算符可以将两个表达式连接起来 int n = 3+5, 6+ 10; // 此时 n = 16 , 称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为 表达式1, 表达式2 逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。例如,上面的逗号表达式“3+5, 6+ 10”的值为16。 例子 : a=3*5,a*4, 注意重点 : 逗号运算符优先度最低,比赋值运算符低。 对此表达式的求解,读者可能会有两种不同的理解:一种认为

刘小雨的博客 2404

飞牛fnNAS个人小账本导入微信账单

本文介绍了将微信支付账单导入ezBookkeeping个人记账系统的详细方法。首先通过微信申请导出账单文件,接收后需进行Excel预处理:删除前导行、添加账户和分类列、整理金额格式等。在ezBookkeeping中需预先设置"微信"分类和账户。导入时需注意列映射关系,包括交易时间、账户名称等关键字段的对应设置。文章还提到处理交易标签、格式转换等细节问题,并建议避免使用"修改余额"功能。该方法同样适用于支付宝账单导入,解决了直接导入可能出现的格式不兼容问题。

dgnankai的专栏 482

2025华为od机试真题B卷【版本管理】JavaScript实现

在 软件版本管理中,版本号由点分割的数字组成,例如 1.2.3 和 2.8。现在,你需要编写一个函数,计算两个版本号之间的可用版本号个数。这里的可用版本号指的是所有满足 version1<x<version2的版本号x的个数。若 version1 >=version2 返回0.,

MISAYAONE的博客 254

C++ 逗号运算符

逗号运算符(comma operator)含有两个运算对象,按照从左向右的顺序依次求值。 对于逗号运算符来说,首先对左侧的表达式求值,然后将求值结果丢弃掉。逗号运算符真正的结果是右侧表达式的值。如果右侧运算对象是左值,那么最终的求值结果也是左值。 //逗号运算符经常被用到for循环当中 vector<int> :: size_type int = ivec.size(); //将把size到1 的值赋给ivec的元素 for(vector<int>::size_type ix

weixin_60154963的博客 1519

玩转Docker小游戏项目系列:Docker部署魔塔网页经典小游戏

玩转Docker小游戏项目系列:Docker部署魔塔网页经典小游戏

jks212454的博客 1063

C++逗号运算符与表达式 | 用逗号表达式输出变量

C++逗号运算符和表达式 C++提供了一种特殊的运算符,逗号运算符,可以将两个表达式连接起来。 逗号运算符又称为顺序求值运算符,一般形式为 表达式1,表达式2 逗号表达式求解过程是:先求解表达式1的值,再求解表达式2的值,但是整个表达式的值是表达式2的值。 案例:使用逗号表达式输出变量的值。 #include<iostream> using namespace std; int main() //主函数 { int num_1; //定义整型变量 num_1=3*5,4*5

weixin_48669767的博客 1494

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

python输出用逗号隔开_2.4 C++逗号运算符与表达式 | 用逗号表达式输出变量

C++逗号运算符和表达式C++提供了一种特殊的运算符,逗号运算符,可以将两个表达式连接起来。逗号运算符又称为顺序求值运算符,一般形式为表达式1,表达式2逗号表达式求解过程是:先求解表达式1的值,再求解表达式2的值,但是整个表达式的值是表达式2的值。案例:使用逗号表达式输出变量的值。#include<iostream> using namespace std; int main() ...

weixin_28755847的博客 484

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

利用二叉树求解表达式的值_2.4 C++逗号运算符与表达式 | 用逗号表达式输出变量...

C++逗号运算符和表达式C++提供了一种特殊的运算符,逗号运算符,可以将两个表达式连接起来。逗号运算符又称为顺序求值运算符,一般形式为表达式1,表达式2逗号表达式求解过程是:先求解表达式1的值,再求解表达式2的值,但是整个表达式的值是表达式2的值。案例:使用逗号表达式输出变量的值。#include<iostream> using namespace std; int main() ...

weixin_39968436的博客 136

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

C++的运算符——算术运算符,赋值运算符,逗号运算符及其表达式

数据的运算符及其表达式

Crocodile1006的博客 1083

c++ 逗号表达式_关于逗号运算符的理解

在C语言中运算符有很多,包括算数运算符、关系运算符、赋值运算符、位运算符、逻辑运算符、三目运算符、sizeof运算符、逗号运算符等等,那今天我们就重点来给大家讨论一下关于逗号运算符的一些运算规则。首先逗号运算符是非常简单的,对于初学者来说,只要在相应的IDE环境中进行测试便可以得到想要的结果;但是对于逗号运算符存在很多变种的题目,在一些笔试面试题中经常会见到,但是在真正的实际开发用的却不是很多,既...

weixin_34614567的博客 1703

C/C++编程笔记:C语言中逗号运算符和逗号表达式,带你仔细区分!

C语言提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如:   3+5,6+8 称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为 表达式1,表达式2 逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。例如,上面的逗号表达式“3+5,6+8”的值为14。又如,逗号表达式   a=3*5,a*4 对此表达式的求解,读者可能会有两种不同的理解: 一种认为“3*5,a*4”是一个逗号表达式,先求出此逗号表达式的值, 如果a...

致力于C语言C++知识分享! 491

C++_逗号运算符

C++中逗号可以作为一个运算符,其作用是连接左右两个表达式, 如:3+5,6+8; 其会先执行逗号左边的表达式然后再执行逗号右边的表达式,两个表达式都计算完以后,以右边的表达式作为最终表达式的结果。 例如: #include <iostream> int main() { int a; //这里加括号是因为赋值运算等级要高于逗号运算 a = (3 + 5, 8 + 8); std::cout << "a="<<a<<std::

Vergesson 2324

c++ 逗号表达式_C/C++编程笔记:C语言中逗号运算符和逗号表达式,带你仔细区分!...

  C语言提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如:  3+5,6+8  称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为  表达式1,表达式2  逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。例如,上面的逗号表达式“3+5,6+8”的值为14。又如,逗号表达式  a=3*5,a*4  对此表达式的求解,读者可能会...

weixin_32238157的博客 363

【C++】三目运算符 与 函数 与 空变量 与 逗号表达式 的奇怪用法

无内鬼,来点歪门邪道 最近用三目运算符用的有点上头,除了正常的赋值外,一些纯执行的函数(像是printf这种的无返回值or返回值一般无意义的函数)都想往三目运算符里塞。 //【正常情况】 #include <stdio.h> int main(){ bool flag=true; if(flag) printf("flag为真\n"); else printf("flag为假\n"); return 0; } //【骚操作_三目运算符代替简单的if语句】 #incl

weixin_44733774的博客 1360
下一篇: HTML简单学习笔记(主要来自W3S)
xiaochenjcl
博客等级 码龄16年 0粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值