• C语言程序设计课堂总结3 蓝银杏


    这个系列是用来解决学校C语言课程的,并不适用于ACM和OI

    本系列博客分为2部分,分别是 C语言程序设计笔记(网课) 和 课堂总结(线下课)

    欢迎转载ssw02的博客: https://www.cnblogs.com/ssw02/p/15994555.html


    C语言程序设计课堂总结3

    笔记里面大多数都有了,有需要可以到寻路贴自取,这次主要补充一些知识

    转义字符

    什么是转义字符?反斜线后面跟一个字符或者一个代码值表示,用于表示常见的那些不能显示的ASCII字符

    常见的转义字符如下:

    image

    强制类型转换

    我们可以在一定范围和规则内进行数据类型的强制转换(和隐性转换相对)

    例如

    int a , c = 5 ; double b = 3.1415
    a = (int)b ; // a = 3  强制把b转换为Int类型的值赋给了a,但b本身不变
    b = (double)c // b = 5.000000
    

    几个易混点:

    1. (int)a+b 和 (int)(a+b) 不一样,强制转换成的数据类型名称一定要打括号,不然报错

    2. double强制转换给int时会直接舍去小数部分,其他的可以类推

    3. 转换时注意数据范围大小,long long 转给 float 就可能会爆(溢出)

    4. 强制转换时注意有符号转为无符号会出现一定的问题如下图

    image

    转换高低级的表格如下:double为我们所接触到的最高的数据类型

    image

    这里补充一个我三年前跳过的坑,今天上课老师居然单独提了,出现下图情况时按右侧存储变量的类型存储

    image

    常见运算符以及表达式

    这里补个图当做总结,其他的可以参考笔记那个系列上的内容

    image

    解释一下单目运算符、双目运算符和三目运算符:

    单目,就是只对一个变量或者常量进行操作

    双目,就是把一个表达式分为左右两部分来看

    三目运算符,但就是把表达式分为三部分来看

    优先级问题

    这里附上一个优先级表格,基本够解决C语言程序设计里面所有涉及优先级的问题了

    image

    做运算的时候一定要遵循优先级,看清楚是从左到右 还是 从右到左

    短路问题

    image

    位运算由于不属于表达式,并不会像例如&&这类逻辑运算符一样出现短路问题

    一些习题

    image

    image

  • 相关阅读:
    FTDI端口或ISP端口编程方式的比较
    PhantomX Pincher Arm---设置ArbotiX和Arduino软件
    PhantomX Pincher机器人机械臂那些事儿
    使用aplay实现音频播放
    TurtleBot3-讲在前面的话
    ROS-ROS命令(五) rosservice:ROS服务
    ROS-ROS命令(四)rostopic: ROS话题
    ROS-ROS命令(三)ROS 信息命令
    jquery下拉框应用
    jquery的attr获取表单checked 布尔值问题
  • 原文地址:https://www.cnblogs.com/ssw02/p/16010118.html
Copyright © 2020-2023  润新知