何为c语言表达式,何为语句与表达式,C语言中的语句与表达式有什么不同?

何为语句与表达式,C语言中的语句与表达式有什么不同?

答案:1  信息版本:手机版

解决时间 2019-10-03 17:32

已解决

2019-10-03 03:57

何为语句与表达式,C语言中的语句与表达式有什么不同?

最佳答案

2019-10-03 05:26

表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。约束变量在表达式中已被指定数值,而自由变量则可以在表达式之外另行指定数值。给与自由变量一些数值指定,可能可以给与一个表达式数值,即使对于一些自由变量的值,表示式或许没有定义。因此,一个表达式代表一个函数,其输入为自由变量的定值,而其输出则为表示式因之后所产生出的数值。

也有人这样解释:

表达式是操作符、操作数和标点符号组成的序列,其目的是用来说明…个计算过程。

表达式可以嵌套,例如:2+3+(5*sizeof(int))/345。

表达式根据某些约定、求值次序、结合和优先级规则来进行计算。

所谓约定,即类型转换的约定。例如:

float a;

a=5/2;

结果。得到值为2。5/2是整数除法取整, 因为5和2都是整数,不会由于a是float型而轻易改变运算的性质。

所谓求值次序,是指表达式中各个操作数的求值次序视编译器不同而不同。见3.9节。

所谓结合性,是指表达式中出现同等优先级的操作符时,该先做哪个操作的规定。例如:

d=a+b-c; //C++规定,加减法先左后右,先做a+b,其结果再减去c

d=a=3; //C++规定,等号是先右后左。先做a=3,其结果再赋给d

所谓优先级,是指不同优先级的操作符,总是先做优先级高的操作。例如:

d=a+b*c; //乘法优先级比加法高。先做b*c,其结果再与a相加

语句指的是当程序运行时执行某个动作的语法结构。它改变变量的值,产生输出,或处理输入。C++ Primer第六章说:语句类似于自然语言中的句子。C++语言既有只完成单一任务的简单语句,也有作为一个单元执行的有一组语句组成的复合语句。

个人认为,和我们说话所说的句子一样的,只是我们写作文用句号结束一个句子,而C++用分号……也就是说,你看到一个分号就表示一个语句。而语句与表达式的区别可以说就在于这个分号。表达式语句——在表达式的末尾加分号就形成了一个表达式语句。

不过简单的讲

"表达式"(expression)是一个单纯的运算过程,总是有返回值;

"语句"(statement)是执行某种操作,没有返回值。

关键就在这每个表达式都有一个值!!!

表达式与语句的区别就在于表达式有返回值,语句没有、语句可以包含表达式,表达式加个分号就是语句。

个人见解,有误请指正。

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

大家都在看

推荐资讯

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值