开发者社区> 问答> 正文

c语言运算符号中的序列点是什么呀?

c语言运算符号中的序列点是什么呀?

展开
收起
LLLA 2022-03-29 15:45:20 837 0
1 条回答
写回答
取消 提交回答
  • 序列点 序列点是程序执行中的一个点,在这个点之前,前面的表达式的求值和副作用已经完成,而后面表达式的求值和副作用还没有发生。C 标准定义以下序列点: (1)运算符&&;运算符||;逗号运算符,;条件运算符?:的第一个子表达式求值结束后; (2)函数调用运算符()中对所有实参数完成求值之后; (3)每个完整表达式结束时。完整表达式包括变量初始化表达式,表达式语句的表达式,return 语句的表达式,if 或 switch 语句中的控制表达式,while 或 do语句的控制表达式,for 语句的所有三个表达式; (4)标准库函数返回之前,标准输入输出函数格式化转换说明符关联动作之后,标准查找函数和排序函数在调用比较函数之前和之后及参数传递之后. 由序列点的定义可知,与运算符&&;或运算符||;逗号运算符,;条件运算符?:等 4 个运算符的左操作数属于前一个序列点,右操作数属于后一个序列点,因此,这 4 个运算符的左操作数的求值要先于右操作数完成

    2022-03-29 15:45:44
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载