接着上次的C语言基础知识梳理,让我们来简单了解一下C语言里的操作符


目录

整数的二进制表示形式

算术操作符

移位操作符

位操作符

赋值操作符

单目操作符

关系操作符

逻辑运算符

条件操作符-三目操作符

下标引用、函数调用、结构成员访问操作符

隐式类型转换(整型提升)

算术转换

总结


  • 整数的二进制表示形式

    1. 针对负数

      1. 原码:直接根据数值写出的二进制序列就是原码 。
      2. 反码:原码 的符号位不变 ,其他位按位取反,就是反码。
      3. 补码:反码加1,就是补码。
    2. 针对正整数:原码反码补码相同

  • 算术操作符

    1. /

6/5为整除,结果是 1;

6.0/5.0结果为1.2,是double类型;

                    2.%

取模:算的是余数,取模的数必须是整数。


  • 移位操作符

    1. 'a<<1':把a的二进制位向左移动一位(不可负号)

Int a=2;一个整体字符是4个字节,32个比特位

2. 右移

右移操作符使用的是算术右移。

算数右移:右边丢弃,左边补原符号位。(0正,1负)

逻辑右移:右边丢弃,左边补0


  1. 位操作符

    1. &按位与

      1. 按(二进制)位与(只有两个均为真,才为真)
    2. ‘|’ 按位或
      1. 二者有一为真,则为真
    3. ^按位异或

  • 赋值操作符

    1. 直接赋值

      1. =
    2. 复合赋值
      1. +=

        1. a=a+100==a+=100
      2. -=
      3. /=
      4. >>=
        1. a=a>>3/a>>=3
      5. <<=
      6. %=
      7. |=
      8. %=

  • 单目操作符

    1. !—逻辑取反

      1. If(!flag):如果flag为假,进入If语句
    2. -   负值
    3. &   —取地址
    4. Sizeof—操作数的类型长度(以字节为单位)
      1. sizeof括号中放的表达式,是不参与运算的
      2. short:2字节;int:4字节。
    5. ~
      1. 对一个数的二进制位补码按位取反
    6. ++
      1. 前置++:先++再使用
      2. 后置++:先使用后++
    7. --
    8. *
      1. 解引用操作符-间接访问操作符
    9. 强制转换(类型)
      1. Int a =(int)3.14

  • 关系操作符

    1. 比较两个字符串是否相等,不能使用等号来判断。

  • 逻辑运算符

    1. 要构成逻辑表达式,需要使用逻辑运算符。

若a为真,则!a为假;若a为假,则!a为真

显然,逻辑运算的结果仍然是逻辑值

只要a、b至少一个为真,a||b就为真

 2.逻辑非!

只有a、b均为真,a&&b的结果才为真

3.逻辑或||

C语言中有三种逻辑运算符

                   4.逻辑与&&

只有a、b均为真,a&&b的结果才为真


  • 条件操作符-三目操作符

        1.b=(a>5?1;-1);

a大于5吗?,如果大于,b等于1,如果不大于,b=-1

2.逗号表达式 


  • 下标引用、函数调用、结构成员访问操作符

  1. 下标引用

    1. Printf("%d\n",arr[4])[]—下标引用操作符

arr和 4是操作数

     2.函数调用

1.Menu()];其中的()是函数调用操作符

     3.结构成员访问操作符

  1. ‘.’点操作符

用“.”可以调出结构体内的成员。‘结构体名‘“.”'成员名'

2.‘->’箭头操作符

Pb->name代表pb指向的对象的name


  • 隐式类型转换(整型提升)

    1. C的 整形算术运算总是至少以缺省整型类型的精度来进行
    2. 为了获得这个精度,表达式中的字符和短整型操作数 在使用之前被转换为普通整形,这种转换称为整型提升
    3. 整型提升 有符号的数补符号位  ,无符号的数补0
    4. 整型提升

  • 算术转换

如果某个操作符的各个操作数属于不同的类型,那么除非其中一个操作数的转换为另一个操作数的类型(从低向高转换),否则操作就无法进行。下面的层次体系称为寻常算术转换。(从低到高转换)


总结

如果你读到了这里,非常感谢你能看完的文章,谢谢!!!!

如果你觉得你有些想法和我一样,想和我一起提升自己可以关注私信我,与我一起进步,一起共同努力!!!!!


【C语言】C语言中基础操作符详细讲解相关推荐

  1. Python的零基础超详细讲解(第五天)-Python的运算符

    往期文章 Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博客-CS ...

  2. Python的零基础超详细讲解(第十三天)-Python的类与对象

    基础篇往期文章如下: Python的零基础超详细讲解(第一天)-Python简介以及下载 Python的零基础超详细讲解(第二天)-Python的基础语法1 Python的零基础超详细讲解(第三天)- ...

  3. Python的零基础超详细讲解(第十二天)-Python函数及使用

    基础篇往期文章: Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博 ...

  4. Python的零基础超详细讲解(第七天)-Python的数据的应用

    往期文章 Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博客-CS ...

  5. python中ix用法_Python: pandas中ix的详细讲解

    Python: pandas中ix的详细讲解 发布时间:2018-09-21 15:59, 浏览次数:2372 , 标签: Python pandas ix 在上一篇博客 中,我们已经仔细讲解了ilo ...

  6. vue中computed的详细讲解

    vue中computed的详细讲解 1.定义 2.用法 3.computed的响应式依赖(缓存) 4.应用场景 1.定义 computed是vue的计算属性,是根据依赖关系进行缓存的计算,只有在它的相 ...

  7. python isdigit和isnumeric区别_isdigit()、isdecimal()和isnumeric python中区别【详细讲解】...

    今天爱分享给大家带来isdigit().isdecimal()和isnumeric python中区别[详细讲解],希望能够帮助到大家. 1.函数介绍 isdecimal(...) | S.isdec ...

  8. isnumeric用法python_isdigit()、isdecimal()和isnumeric python中区别【详细讲解】

    今天爱分享给大家带来isdigit().isdecimal()和isnumeric python中区别[详细讲解],希望能够帮助到大家. 1.函数介绍 isdecimal(...) | S.isdec ...

  9. 【C语言】数组的基本知识详细讲解(一维数组、二维数组、越界、存储.....

    接着上次的操作符的详解,让我们来简单了解C语言里的数组. 目录 一维数组的创建和初始化 一维数组的使用 一维数组的存储 二维数组的创建与初始化 二维数组的存储 数组的越界 总结 一维数组的创建和初始化 ...

  10. c语言库快速幂函数,C语言 - 快速幂 - 迭代法+递归法 - 详细讲解

    快速幂的作用: 解决 求 a ^ n 的问题 (n可以大于1e18), 如果用for循环的话,毫无疑问直接炸掉 -- 所以也就用了算法复杂度在 o(log n)的快速幂算法来解决此类问题. 快速幂递归 ...

最新文章

  1. 周志华:“深”为什么重要,以及还有什么深的网络
  2. matplotlib绘图蓝本
  3. SSH、SSL与HTTPS
  4. UNION 和UNION ALL 的区别
  5. OpenJDK 中脏话太多,开发者看不下去了
  6. YAF redis
  7. 蚂蚁金服技术专家:mPaaS是如何打造“最懂用户”的App的?
  8. 前端——“一看就会的”菜鸟教程网站首页制作!
  9. 构建高可用MYSQL主从复制集群
  10. XBEE-PRO-SX快速上手
  11. java面向对象编程思想的理解
  12. [584]python给生僻字注拼音(pypinyin库)
  13. inno setup QQ音乐安装包界面
  14. 通配符?,*,**区别
  15. 使用Tickeys寻找打字音效
  16. 罗森伯格参加国标GB50174北京、上海、广州贯标培训会
  17. IPGUARD苹果系统客户端安装与卸载
  18. 再分享一个自己写的向量和二维坐标变换的类
  19. shopify cli 安装记录
  20. Android的重力传感器(3轴加速度传感器)简单实例

热门文章

  1. Sketch设置透明背景
  2. 个人如何选择阿里云香港服务器?
  3. Element UI中的图标
  4. [ur_driver-2] process has died
  5. selenium自动化从0开始学习
  6. Longest Palindrome
  7. 计算机论文 大学保研,保研北大,两篇论文,三项专利,这是她的大学
  8. 激战2怎么选最新的服务器,选哪个服好?《激战2》高玩分析各服务器进驻人数...
  9. 使用 TestFlight 进行 iOS App 内测
  10. 赵小楼《天道》《遥远的救世主》深度解析(128)神即道,道法自然,如来