首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

C语言赋值运算符用法介绍

C语言赋值运算符用法介绍

C 语言提供的用于基本算术运算的运算符(Operator)有:=、+、-、*,以及 /。C 没有提供指数运算符,不过 C 标准函数库提供了 Pow 函数用于指数运算。例如:Pow(9.0, 2.0) 返回 81.0,也就是 9.0 的 2.0 次方。

赋值运算符(Assignment Operator): =




C 语言中, = 不是等于号,而是赋值运算符。以下语句:




Var = 100;




把整数值 100 赋予变量 Var。也就是说,= 左部是变量的名字,右部是赋予变量的值。不要把上述语句理解为“Var 等于 100”,正确的理解是“将整数值 100 赋予变量 Var”。我们再看一个语句:




Var = Var + 1;




这个语句的意思是,先将 Var 的值和 1 相加,然后把相加结果赋值给 Var 。假设赋值之前 Var 的值是 100,那么赋值后 Var 的值就是 101。




语句 100 = Var; 是非法的。因为 100 是一个常量,常量的值是不能改变的,所以我们不能给 100 赋值。我们必须牢牢记住,= 的左部必须是变量。







术语解释:数据对象(Data Object)、左值(Lvalue)、

右值(Rvalue),操作数(Operand)




数据对象是指可用于存取值的一定量的数据存储空间。例如:用于存储变量或者数组等的数据存储空间就是数据对象。左值是指用于识别特定数据对象的名字或者表达式(Expression)。变量名就是左值。所以,数据对象是指实际的数据存储空间,而左值是指用于识别或者定位存储空间的标签。




并非所有数据对象的值都可以改变。如果某个左值确定的数据对象刚好是可变值的,则称这个左值为可变左值(Modifiable Lvalue)。因此,我们说赋值运算符的左部必须是可变左值。




右值是指可用于赋值给可变左值的值。例如:




Var = 100;




这里的 Var 是可变左值,100 是右值。右值可以是常量、变量,也可以是任何能够产生值的表达式。




    操作数是指运算符的作用对象。所以,Var 和 100 都是赋值运算符的操作数。




下面我们来看一个例子。




/* Height.C */

#Include <Stdio.H>




Int Main(Void)

{

    Int Antigloss, Sally, Ralphclark;




    Antigloss = Sally = Ralphclark = 172;




    Printf("        Antigloss   Sally   Ralphclark
");

    Printf("Height:   %D        %D       %D
", Antigloss, Sally, Ralphclark);




    Return 0;

}




赋值运算是从右向左进行结合的,上面的赋值语句首先将 172 赋值给 Ralphclark,然后把Ralphclark的值(也就是 172)赋予 Sally,最后把 Sally 的值赋予 Antigloss。运行结果如下:




        Antigloss   Sally   Ralphclark

Height:   172        172       172
返回列表