首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

机器人说明---名词解释007课_C语言_运算符号

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。

其中最简单的是算术运算符

假设变量A的值为 20,变量B的值为 10,则:

+ 把两个操作数相加A + B 将得到 30

- 从第一个操作数中减去第二个操作数A - B 将得到 10

* 把两个操作数相乘A * B 将得到 200

/ 分子除以分母A / B 将得到 2

%取模运算符,整除后的余数A % B 将得到 0

++自增运算符,整数值增加 1A++ 将得到 21

--自减运算符,整数值减少 1A-- 将得到 19

```C

#include

int main()

{

 int a = 20;

 int b = 10;

 int c ;

 c = a + b;

 printf("Line 1 - c 的值是 %d\n", c );

 c = a - b;

 printf("Line 2 - c 的值是 %d\n", c );

 c = a * b;

 printf("Line 3 - c 的值是 %d\n", c );

 c = a / b;

 printf("Line 4 - c 的值是 %d\n", c );

 c = a % b;

 printf("Line 5 - c 的值是 %d\n", c );

 c = a++;  // 赋值后再加 1 ,c 为 20,a 为 21

 printf("Line 6 - c 的值是 %d\n", c );

 c = a--;  // 赋值后再减 1 ,c 为 21 ,a 为 20

 printf("Line 7 - c 的值是 %d\n", c );

}

```

a++ 与 ++a 的区别:

a++,先赋值后运算

++a,先运算后赋值

```C

#include

int main()

{

 int c;

 int a = 10;

 c = a++;

 printf("先赋值后运算:\n");

 printf("Line 1 - c 的值是 %d\n", c ); //Line 1 - c 的值是 10

 printf("Line 2 - a 的值是 %d\n", a );// Line 2 - a 的值是 11

 a = 10;

 c = a--;

 printf("Line 3 - c 的值是 %d\n", c ); // Line 3 - c 的值是 10

 printf("Line 4 - a 的值是 %d\n", a ); // Line 4 - a 的值是 9

 printf("先运算后赋值:\n");

 a = 10;

 c = ++a;

 printf("Line 5 - c 的值是 %d\n", c ); // Line 5 - c 的值是 11

 printf("Line 6 - a 的值是 %d\n", a ); // Line 6 - a 的值是 11

 a = 10;

 c = --a;

 printf("Line 7 - c 的值是 %d\n", c ); // Line 7 - c 的值是 9

 printf("Line 8 - a 的值是 %d\n", a ); // Line 8 - a 的值是 9

}

```

关系运算符,是一种判断。

假设变量A的值为 10,变量B的值为 20,则

==检查两个操作数的值是否相等,如果相等则条件为真。

(A == B) 为假。

!=检查两个操作数的值是否相等,如果不相等则条件为真。

(A != B) 为真。

> 检查左操作数的值是否大于右操作数的值,如果是则条件为真。

(A > B) 为假。

(A < B) 为真。

>=检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。

(A >= B) 为假。

(A

逻辑运算符

假设变量A的值为 1,变量B的值为 0,则:

&&称为逻辑“与”运算符。如果两个操作数都非零,则条件为真。

(A && B) 为假。

||称为逻辑“或”运算符。如果两个操作数中有任意一个非零,则条件为真。(A || B) 为真。

!称为逻辑“非”运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。!(A && B) 为真。

位运算符

很少遇到,此课程中不做讲解。需要学习C语言的,可以关注公众号之后的专项讲解。

赋值运算符

```

=简单的赋值运算符,把右边操作数的值赋给左边操作数C = A + B 将把 A + B 的值赋给 C

+=加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数C += A 相当于 C = C + A

-=减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数C -= A 相当于 C = C - A

*=乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数C *= A 相当于 C = C * A

/=除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数C /= A 相当于 C = C / A

%=求模且赋值运算符,求两个操作数的模赋值给左边操作数C %= A 相当于 C = C % A

\>>=右移且赋值运算符C >>= 2 等同于 C = C >> 2

&=按位与且赋值运算符C &= 2 等同于 C = C & 2

^=按位异或且赋值运算符C ^= 2 等同于 C = C ^ 2

|=按位或且赋值运算符C |= 2 等同于 C = C | 2

```

杂项运算符

sizeof() 返回变量的大小。sizeof(a) 将返回 4,其中 a 是整数。

& 返回变量的地址。&a; 将给出变量的实际地址。

*  指向一个变量。*a; 将指向一个变量。

? : 条件表达式如果条件为真 ? 则值为 X : 否则值为 Y

运算符的优先级确定表达式中项的组合。这里很重要,这会影响到一个表达式如何计算。所有需要记住这些优先级。

例如,乘除运算符具有比加减运算符更高的优先级。

运算都是从左到右的,而条件和赋值则是从右往左的。

```

后缀 () [] -> . ++ - -  从左到右

一元 + - ! ~ ++ - - (type)* & sizeof 从右到左

乘除 * / % 从左到右

加减 + - 从左到右

移位 > 从左到右

关系 < >= 从左到右

相等 == != 从左到右

位与 AND & 从左到右

位异或 XOR ^ 从左到右

位或 OR | 从左到右

逻辑与 AND && 从左到右

逻辑或 OR || 从左到右

条件 ?: 从右到左

赋值 = += -= *= /= %=>>=

逗号 , 从左到右

```

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OMCF_iju4LOObpeAv5d1EeDg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券