zoukankan      html  css  js  c++  java
  • 《C语言基础日常笔记》

    1. 类型转换-----------------20130902

    a, 浮点数(包括单精度与双精度)赋值给整型变量时,舍弃浮点数的小数部分,直接将其整数部分存放在整型变量里。

    b, 整型变量赋值给浮点数(包括单精度与双精度)时,数值不变,但会以浮点数形式保存到变量里。

    c, 将一个double型数据赋值给float型变量时,截取其前面7位有效数字,存放在float的存储单元中。

    d, 无符号char型赋值给整型变量时,则将其char型的8位直接放到int的低8位中,高8位补0。

    e, 有符号char赋值给int时,则将其char型的8位直接放到int的低8位中,如果字符最高位(即符号位)为1,高8位补1,相反,如果符号位为0,则高8位补0。

    f, 将一个int,short,long赋值给一个char时,只要将其低8位拷贝到char型即可。

    g,有符号int 赋值给long时,也要进行符号扩展。与类似,假设int 占2个字节,long 占4个字节,则将Int直接赋值到低16位,高16位则根据int的符号位的1,0分别全部补为1或者0.

    h,将无符号int赋值给long 时,不存在符号扩展,直接将其拷贝在低16位,高16位补0即可。

    i, 将无符号数据赋值给等长度的有符号变量时,直接拷贝即可。

    总结: 相对的短类型变量赋值给长类型变量时,将短类型变量直接拷贝到长类型变量的低位,而高位是否需要进行符号扩展,则根据该短类型变量是否是有符号的来决定,如果是有符号的,则根据该变量符号位的值1或者0,将其高位全部设置为1或者0,如果是无符号的,则不需要扩展,高位直接补0即可。

    2. 整型常理的表示方法:

    a. 八进制整数,以0开头的数是八进制整数,如0123表示八进制数123,换为十进制为83,-011表示八进制-11,即十进制-9.

    b. 十六进制整数,以0x开头的是十六进制整数,如0x123。

    3. 负数的补码与原码的求值:补码--->原码:各位取反加1,原码---->补码:绝对值各位取反加1.

    4. 

  • 相关阅读:
    移动端 提交按钮呗软键盘挤上去的问题解决
    jenkins创建项目API踩坑记
    backstage使用笔记(2)- 跨域代理设置
    backstage使用笔记(1)- 项目的搭建和插件的创建
    什么是强缓存,什么是协商缓存?
    关于antd英文文案切换为中文
    记解决遇到自己电脑看线上项目没问题,别的同事电脑看线上项目有问题的疑难杂症
    vue.js组件传值
    Vue.js组件
    关于Object.keys()和for in的区别
  • 原文地址:https://www.cnblogs.com/xiaowenhu/p/3296018.html
Copyright © 2011-2022 走看看