C语言序列点浅析

摘要:

现行国内的C语言教材普遍不介绍序列点,这使得读者只能“死记硬背”有序列点表达式的求值顺序,不仅造成了读者对C语言知识的认知残缺不全,而且也影响了读者学习的积极性。本文总结了序列点的作用,即表达式求值时需考虑序列点的影响,序列点左边的操作数要先于其右边的操作数求值。结合操作符的作用,分析了逗号操作符,、逻辑与操作符&&、逻辑或操作符||和条件操作符?:的问号处?为什么会有序列点。

关键字:序列点 表达式 C语言

C语言是最重要的结构化程序设计语言,许多编程语言如Java、C++、C#都借鉴了C语言的语法。随着数字化信息技术的发展和网络环境的形成,计算机已渗透到各行各业,为了更好地了解和使用计算机,国内大专院校的许多理工类专业都开设了C语言课程,因此,C语言的教学水平影响着许许多多的学生。

现行国内的C语言教材通常不介绍序列点,这使得读者只能“死记硬背”有序列点表达式的求值顺序。以简单的逗号表达式为例,设变量a为整型变量(下文中出现的变量a也为整型变量),在分析表达式a = 3, ++a的求值顺序时强调“逗号表达式自左向右依次求值”,而在分析表达式求值的原则时强调根据操作符的优先级和结合性确定求值顺序。即使表达式中自增操作符++的优先级最高,也要先对子表达式a=3求值,该怎样向学生解释这与求值原则矛盾的“求值顺序”呢?

1序列点的定义及分析

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值