惧留孙网

juliusun.com

在线教程 > C语言教程 > 运算符及表达式

运算符及表达式

第 6/50 节 冥河C语言教程


再介绍一个新名词-运算符,在很多资料中也称为操作符。运算符可对数据进行操作,一个常用的运算符就是等号运算符,写作“=”,等号运算符可以给变量赋值。等号运算符用法为“变量=值;”,值可以来自表达式、常量或是变量等。如:


  1. //定义一个int类型的变量,变量名为x
  2. int x ;
  3. //将x的值赋值为1
  4. x = 1;

注意,变量赋值也是语句,语句用分号结尾,不要忘记。

运算符需要1、2、3个运算数(也被称为操作数)时,对应的被称为单目、双目和三目运算符。如加号运算符'+'使用时需要两个运算符,就被称为双目运算符。C语言里需要运算数最多的就是三目运算符,不存在需要更多操作数的运算符。

C语言可以在定义变量时直接赋值,所以上例可以直接写成如下:


  1. //定义一个int类型的变量x,初始值为1
  2. int x = 1 ;

再介绍一个名词-表达式,表达式由运算符、变量或常量组成。比如x=1是一个表达式。表达式会返回计算后的结果。

咱们日常的加减乘除运算,在C语言中也有对应的运算符,分别是+、-、*、/。用法与平时的用法差不多,比如表达式5+2的值就是7,3*7的值就是21。给变量赋值时,不光可以用常量赋值,也可以用表达式赋值如:


  1. //x初始值为8,由表达式3+5计算得出
  2. int x = 3 + 5 ;

变量的值也可以直接或间接来自变量,如:


  1. int x = 1 ; //x的初始值为1
  2. //定义变量y,并将x的值赋值给y
  3. int y = x;
  4. //定义变量z,初始值由x+2运算后为3
  5. int z = x + 2;

上述代码也可以直接写在一个语句里,如:


  1. int x = 1, y = x, z = x + 1;
  1. int x, y, z;
  2. x=1;
  3. y=x;
  4. z=x+1;

再介绍小括号运算符( )用法,在表达式中,括号表达式可以用来确定运算符优先级。如C语言规定选乘法运算符*和除法运算符/优先级高于加法运算符*和减法运算符-。如果我们想要加法先执行,就可以在加号表达式上放上括号,如5 * ( 3 + 2)。

更多运算符优先级,可以 查询C语言运算符优先级

由于等号表达式同样返回一个值,返回的是赋值的结果,且一个表达式可以有多个运算符,根据稍新一点的标准,上述例子可以直接写成:


  1. int x, y, z;
  2. z=( y = ( x = 1)) + 1;

上述小括号运算符仅影响运算符优先级。由于C语言标准的版本问题,少数编译器不支持上述写法。

学习前期,我们遇到的运算符很少,如果想了解C语言运算符,可以 查询C语言运算符

一个表达式可以有多个运算符,如:


  1. int x = 8;
  2. int y = 5 * (x - 3) + 2; //y值为27

再介绍几种常用运算符:

取模运算符%,也称取余运算符。就是求一个数除以另一个数的余数,如10 % 3,表达式为1,因为10除3余数为1。9 % 3值为0。

  计算数据类型或变量占用空间大小运算符 sizeof,返回类型或变量占用空间的大小,单位为字节。用法为"sizeof(变量或类型)"或"sizeof 变量"。如32位环境下,int类型占用4个字节,假设先定义了int i;那么“sizeof(int)”、“sizeof(i)”和“sizeof i”返回的值都是4,注意sizeof后面不接括号接空格时,再后面只能接变量名,不能接类型名,建议sizeof和括号搭配使用。sizeof同时是C语言关键字。

本节讲到这里,下节准备讲输入输出,大家就要实际动手写代码了。

作者:冥河 QQ:3304576112
交流QQ群:554701039 C语言讲课群
本教程内容由本站保留版权,请勿复制传播
抖音
©2015-2024 惧留孙网 juliusun.com

京ICP备15039193号-1

首页 教程 下载 文章 聊天 我的