C语言中表达式和表达式语句的区别(什么又叫做表达式)
表达式:
表达式是操作符、操作数和标点符号组成的序列,其目的是用来说明…个计算过程。
表达式可以嵌套,例如:2+3+(5*sizeof(int))/345。
表达式根据某些约定、求值次序、结合和优先级规则来进行计算。
所谓约定,即类型转换的约定。例如:
float a;
a=5/2;
结果。得到值为2。5/2是整数除法取整, 因为5和2都是整数,不会由于a是float型而轻易改变运算的性质。
所谓求值次序,是指表达式中各个操作数的求值次序视编译器不同而不同。见3.9节。
所谓结合性,是指表达式中出现同等优先级的操作符时,该先做哪个操作的规定。例如:
d=a+bc; //C++规定,加减法先左后右,先做a+b,其结果再减去c
d=a=3; //C++规定,等号是先右后左。先做a=3,其结果再赋给d
所谓优先级,是指不同优先级的操作符,总是先做优先级高的操作。例如:
d=a+b*c; //乘法优先级比加法高。先做b*c,其结果再与a相加
表达式语句:
C++中所有的操作运算都通过表达式来实现。 由表达式组成的语句称为表达式语句。
它由一个表达式后接一个分号“;”组成。
表达式和语句的区别
表达式:
表达式是操作符、操作数和标点符号组成的序列,其目的是用来说明…个计算过程。
表达式可以嵌套,例如:2+3+(5*sizeof(int))/345。
表达式根据某些约定、求值次序、结合和优先级规则来进行计算。
所谓约定,即类型转换的约定。例如:
float a;
a=5/2;
结果。得到值为2。5/2是整数除法取整, 因为5和2都是整数,不会由于a是float型而轻易改变运算的性质。
所谓求值次序,是指表达式中各个操作数的求值次序视编译器不同而不同。见3.9节。
所谓结合性,是指表达式中出现同等优先级的操作符时,该先做哪个操作的规定。例如:
d=a+bc; //C++规定,加减法先左后右,先做a+b,其结果再减去c
d=a=3; //C++规定,等号是先右后左。先做a=3,其结果再赋给d
所谓优先级,是指不同优先级的操作符,总是先做优先级高的操作。例如:
d=a+b*c; //乘法优先级比加法高。先做b*c,其结果再与a相加
表达式语句:
C++中所有的操作运算都通过表达式来实现。 由表达式组成的语句称为表达式语句。
它由一个表达式后接一个分号“;”组成。
怎样区分表达式和表达式语句
表达式是用来表达某含义的。可以包括定义某值,或判断某物,最终会有一个“值”的体现,“Anything that has a value”。
比如说 var a=b就是表达式,是把b的值赋给a,或者 if (a == b)其中if()内的也是表达式。
而表达式语句就是程序识别的一条执行表达式的语句。
例如 var a=b; 这条是赋值语句,这里微小的差别就是加上了分号;作为语句结束符。
另外,if(a==b){} 这个是判断语句。
其实表达式简单的可以理解成某语言的语法,而由这些语法构成的一条执行语句则是表达式语句。
希望能加速你的理解。
怎样区分表达式和表达式语句
凡是有值的都是表达式。具体包括:数字,标识符,字符常量,字符串常量,函数调用,以及以上几种用运算符组合起来。
如a,a++,a+b,”dfsaf”,f()。.
表达式后面加一个分号就构成了表达式语句。
为什么要用表达式语句呢?因为我们需要表达式的副作用,而不是它的值。
比如a++;和++a;这条表达式的值对我们来说没什么意义,我们只是单独希望他把a加一而已。
再比如函数调用。puts(“haha”);puts是有返回值的,但显然我们并不关心。要的只是要他执行了就行。
注意,声明是语句,不是表达式。for(;;)里面是表达式,而不是语句。
怎样区分表达式和表达式语句
表达式是用来表达某含义的。
可以包括定义某值,或判断某物,最终会有一个“值”的体现,“Anything that has a value”。比如说 var a=b就是表达式,是把b的值赋给a,或者 if (a == b)其中if()内的也是表达式。
而表达式语句就是程序识别的一条执行表达式的语句。例如 var a=b; 这条是赋值语句,这里微小的差别就是加上了分号;作为语句结束符。
另外,if(a==b){} 这个是判断语句。其实表达式简单的可以理解成某语言的语法,而由这些语法构成的一条执行语句则是表达式语句。
希望能加速你的理解。
在C++中,表达式与表达式语句有什么区别
表达式:
表达式是操作符、操作数和标点符号组成的序列,其目的是用来说明…个计算过程。
表达式可以嵌套,例如:2+3+(5*sizeof(int))/345。
表达式根据某些约定、求值次序、结合和优先级规则来进行计算。
所谓约定,即类型转换的约定。例如:
float a;
a=5/2;
结果。得到值为2。5/2是整数除法取整, 因为5和2都是整数,不会由于a是float型而轻易改变运算的性质。
所谓求值次序,是指表达式中各个操作数的求值次序视编译器不同而不同。见3.9节。
所谓结合性,是指表达式中出现同等优先级的操作符时,该先做哪个操作的规定。例如:
d=a+bc; //C++规定,加减法先左后右,先做a+b,其结果再减去c
d=a=3; //C++规定,等号是先右后左。先做a=3,其结果再赋给d
所谓优先级,是指不同优先级的操作符,总是先做优先级高的操作。例如:
d=a+b*c; //乘法优先级比加法高。先做b*c,其结果再与a相加
表达式语句:
C++中所有的操作运算都通过表达式来实现。 由表达式组成的语句称为表达式语句。
它由一个表达式后接一个分号“;”组成。