找回密码
 立即注册
搜索
热搜: 活动 通知
查看: 613|回复: 0

表达式(Expressions)

[复制链接]

416

主题

315

回帖

3288

积分

管理员

积分
3288
发表于 2024-3-10 21:05:07 | 显示全部楼层 |阅读模式
表达式(Expressions)



一般来说,表达式由运算符和它的操作数组成,但有些非常简单的表达式没有运算符。表达式可以出现在声明和各种语句里,以实现下面的一种或多种功能:
(1)指示对象或者函数;
(2)计算出一个值;
(3)发起一个副作用。
给定以下代码:
  1. int x = 0, f (void);
  2. x ++;
  3. f ();
  4. x = sizeof (int);
复制代码

上例中的0是常量表达式,它计算出一个零值,然后赋给对象x;
表达式x++包含了一个子表达式x,表达式x指示一个对象。表达式x++会计算出一个值(对象x的原始内容),同时会发起一个副作用(将加一后的值写回对象x)。
表达式f()包含了一个子表达式f,表达式f指示一个函数。表达式f()会计算出一个值(函数调用的返回值),同时,函数调用可能会有副作用。
表达式x=sizeof(int)更复杂,它包含了两个子表达式x及sizeof(int)。表达式x指示一个对象;表达式sizeof(int)计算出一个值。最后,表达式x = sizeof (int)会计算出一个值(对象x被赋值后的新值),同时会发起一个副作用(对象x的存储值会被修改)。
C语言里的表达式可划分为以下种类:


C中的表达式可以大体上划分为:
(1)基本表达式
(2)后缀表达式
(3)一元表达式
(4)转型表达式
(5)乘性表达式
(6)加性表达式
(7)移位表达式
(8)关系表达式
(9)等性表达式
(10)逐位与表达式
(11)逐位异或表达式
(12)逐位或表达式
(13)逻辑与表达式
(14)逻辑或表达式
(15)条件表达式
(16)赋值表达式
(17)逗号表达式
注意,这个顺序是有意安排的,组成它们的运算符的优先级按这个顺序递减。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|鼠侠网 ( 吉ICP备19001332号 )

GMT+8, 2024-12-22 09:07 , Processed in 0.210974 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表