【C语言操作符多图详解】——“讲述你所未知的操作符细节”(上)

简介: 【C语言操作符多图详解】——“讲述你所未知的操作符细节”(上)

今天小玄为大家带来C语言的操作符相关的讲解,希望大家能通过这篇文章对相关操作符有更加深入的理解。那么:

 


目录

算数操作符

移位操作符

1·<< 左移操作符

* * 左移操作前 * *

   * * 左移操作后 * *    

* * 总结 * *

2. >> 右移操作符

位操作符

* * & (按位与)* *

* * | (按位或)* *

* * ^ (异或)* *

实践运用

赋值操作符

* * 举例 * *

复合赋值符

单目操作符

* * 类型 * *

* *sizeof * * (操作符)(不是函数!)

* * ~  (对一个数的二进制按位取反) * *

例题实战

关系操作符

* * 类型 * *

逻辑操作符

* * 类型 * *

“区分逻辑与和按位与” “ 区分逻辑或和按位或 ”

一道笔试题

条件操作符

exp1 ? exp2 : exp3

逗号表达式

操作符的属性



算数操作符

                       +                   -                  *                  /                  %


        相关细节:

  1. 除了%操作符之外,其他的几个操作符可以作用于整数和浮点数。
  2. 对于/操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。
  3. %操作符的两个操作数必须为整数。返回的是整除之后的余数。


移位操作符

<< 左移操作符

>> 右移操作符


1·<< 左移操作符

* * 左移操作前 * *

移位操作符,移动的是二进制位(适用于整数哦)

对于整数的二进制有3种表示形式 :原码,反码,补码

  1. 正整数 —— 原码,反码,补码相同
  2. 负数    ——  看实际情况        


原码 —— 直接按照数字的正负写出的二进制序列

反码 —— 原码的符号位不变,其他位按位取反得到的

补码 —— 反码+1


整数在内存中存储的是二进制的补码

1.png

2.png

* * 左移操作后 * *

3.png4.png

* * 总结 * *

左移操作符 移位规则:左边抛弃、右边补0


2. >> 右移操作符

右移操作分两种:

  1. 算术右移
  2. 逻辑右移

5.png

大部分的编译器使用的是算术右移

警告⚠ : 对于移位运算符,不要移动负数位,这个是标准未定义的。 int num = 10;

int num = 10;
num >> 1;
//错误的操作

位操作符

* * & (按位与)* *

按二进制位(即用该数的补码进行计算)

6.png


* * | (按位或)* *

7.png

* * ^ (异或)* *

规则 : 相同为 0;相异为18.png


目录
相关文章
|
14天前
|
存储 编译器 C语言
爱上C语言:操作符详解(下)
爱上C语言:操作符详解(下)
|
26天前
|
算法 测试技术 C语言
【C语言】异或(^)操作符
【C语言】异或(^)操作符
16 0
|
1月前
|
存储 算法 程序员
【c 语言 】位操作符详解
【c 语言 】位操作符详解
39 0
|
1月前
|
存储 编译器 Linux
操作符详解【c语言】
操作符详解【c语言】
|
1月前
|
存储 编译器 程序员
c语言从入门到实战——操作符详解
C语言操作符指的是程序中用来进行各种计算、逻辑和条件操作的符号或符号组合。 操作符是编程中用于执行特定操作或比较数据的符号。它们根据操作类型分为算术、比较、逻辑和位操作符。算术操作符执行加、减、乘、除等数学运算;比较操作符比较两个值的大小或相等性;逻辑操作符连接多个条件,形成更复杂的逻辑判断;位操作符则直接对整数的二进制位进行操作。了解各种操作符的特性和用法,对于编写高效、准确的代码至关重要。
54 0
|
30天前
|
存储 编译器 程序员
C语言第十六弹---操作符(下)
C语言第十六弹---操作符(下)
|
1天前
|
C语言
条件操作符和逻辑操作符(C语言零基础教程)
条件操作符和逻辑操作符(C语言零基础教程)
|
28天前
|
编译器 C语言 索引
C语言操作符详解(上)
C语言操作符详解(上)
45 0
|
1月前
|
存储 安全 编译器
【 c 语言 】赋值操作符详解
【 c 语言 】赋值操作符详解
85 0
|
1月前
|
存储 算法 编译器
【c 语言】算术操作符详解
【c 语言】算术操作符详解
42 0