逗号运算符逗号运算符详解

逗号运算符  时间:2021-08-02  阅读:()

关于逗号运算符的问题?

逗号表达式顺序执行,其值为最后一个表达式的值。

所以:i=3*4,i*4,i+10三个表达式先后执行,((i=3*4,i*4),i+10); 的值为执行后i+10的值。

i=3*4的时候,i=12,然后i的值没有改变,i+10就等于 22,被赋给i,所以i就是22

请问C语言里逗号运算符有什么用?

C语言中,逗号既可作 分隔符 ,又可作 运算符。

(1)逗号作为分隔符使用时,用于间隔说明语句中的变量或函数中的参数; 例如楼上的朋友所举的例子:int a, b, c, d; 用于 间隔说明语句中的变量, printf ("%d %d",x,y);用于间隔函数中的参数; (2)作为 运算符 使用时,将若干个独立的表达式连接在一起,组成一个逗号表达式。

其形式为: 表达式1,表达式2,表达式3,……,表达式n 运算过程:从左向右执行, 先计算 表达1 的值,再计算 表达式2 的值,依次往后计算,直到计算出表达式n 的值 作为 1到n 整个表达式的 值, 其 值 的类型和 表达式n 的类型相同 。

在使用过程中注意一点: 逗号作运算符使用时,它的 优秀级 是所有运算符中最低的,即 最先执行 逗号运算。

例如: int x=14,y=5; y=((x=3*y,x+6),x-1); printf ("x=%d,y=%d",x ,y); 这个程序的执行结果: x=15,y=14 执行语句 y=((x=3*y,x+6),x-1);时,最外层的括号里面是一条 逗号 语句,把这个逗号语句的值 赋给 y,由于是按从左向右的顺序执行,即先执行 里面一层的 括号,而里面这层 依然是一个 逗号表达式,在这里层 中 依然按从左向右的顺序执行,先执行x=3*y , 执行后 x的值为15,然后执行 x+6, 其值为21 , 里层括号执行完毕 ,得到 里层括号的值为 21,最后执行 x-1,为14,将 14 这个值作为最终结果 赋给 y ; 得到程序最终结果,x值为15,y值为14。

C语言 逗号运算符和逗号表达式

说出来也许你很困惑 y=(x=a+b) 这里,把a+b的值赋给x 然后再把x赋给y 然后输出 y=(x=a+b),(b+c); 再看这个, a,b,c都赋有初值 并不是变量 一旦把常量赋给变量后,就不需再把逗号后面的常量赋给前面的变量了 如果是这样 y=(x=(a+b),x*5) 那么y就等于30,x=6了

逗号运算符详解

逗号运算符就是无论有多少表达式、最后的值是最后一个表达式的值! 例如:(3>2):67;5 返回值就是67因为第一个表达式的值为真、返回冒号前面的表达式!假值返回冒号后面的表达式的值

云步云72.5元/月起云服务器,香港安畅/葵湾/将军澳/沙田/大浦CN2机房,2核2G5M

云步云怎么样?云步云是创建于2021年的品牌,主要从事出售香港vps、美国VPS、日本VPS、香港独立服务器、香港站群服务器等,机房有香港、美国、日本东京等机房,目前在售VPS线路有CN2+BGP、CN2 GIA,香港的线路也是CN2直连大陆,该公司旗下产品均采用KVM虚拟化架构。目前,云步云提供香港安畅、沙田、大浦、葵湾、将军澳、新世界等CN2机房云服务器,2核2G5M仅72.5元/月起。点击进...

819云互联 香港 日本 美国 2核4G 18元 8核8G 39元 免费空间 免费CDN 香港 E3 16G 20M 230元/月

819云互联是海外领先的互联网业务平台服务提供商。专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前平台研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的海外资源、香港,日本,美国等各国优质的IDC资源。官方网站:https://www.819yun.com香港特价物理服务器:地区CPU内存带宽...

Megalayer新加坡服务器国际带宽线路测评

前几天有关注到Megalayer云服务器提供商有打算在月底的时候新增新加坡机房,这个是继美国、中国香港、菲律宾之外的第四个机房。也有工单询问到官方,新加坡机房有包括CN2国内优化线路和国际带宽,CN2优化线路应该是和菲律宾差不多的。如果我们追求速度和稳定性的中文业务,建议还是选择CN2优化带宽的香港服务器。这里有要到Megalayer新加坡服务器国际带宽的测试服务器,E3-1230配置20M国际带...

逗号运算符为你推荐
oracle11g下载Oracle哪里有下载.免费的版本呢免费erp如何有效的去使用一款免费的ERPblastpBLAST有什么用?为什么要BLAST?apple以旧换新苹果手机以旧换新 是怎么换的什么要求exe文件打不开所有exe文件不能打开巴西时区巴西与中国的时差是多少横幅广告banner是横幅广告,botton是按钮型广告。大家能说说它们之间的区别吗?微店是什么个人微店和企业微店,有什么区别?团购网源码谁有功能比较全的团购网的代码?asp代码求ASP的代码
重庆vps租用 免费动态域名解析 万网域名管理 金万维动态域名 联通c套餐 hostgator 精品网 国内永久免费云服务器 华为云主机 lamp配置 本网站在美国维护 已备案删除域名 域名dns 宏讯 云服务器比较 浙江服务器 阿里云邮箱登陆 数据湾 国外免费网盘 免费赚q币 更多