zoukankan      html  css  js  c++  java
  • c++(一)

    0和1的意义:

    在计算机中0和表示逻辑电路的开关,其中1为闭合,0为断开.

    0和1可以用来表示计算机中的所有数据,如颜色,图片,视频,可执行程序,如可用由32个0组成的000000000000000000~表示白色;

    二进制:

    2进制中的一位为一个比特,8个比特组成一个一个字节;

    二进制与十进制的转换:

    二进制->十进制:A2A1A0=A0*2^0+A1*2^1+A2*2^2;

    十进制->二进制:短除法, 将10进制数除以2以及所得得商除以2所得余数组成,例如:10->2  10/2=5(余)0,5/2=1(余)1,1/2=0(余)1,则对应二进制为:110

    变量:

    程序运行时会给变量分配内存空间,访问这个变量名字实际就是访问这个内存空间

    变量的类型以及范围:

    参考:https://blog.csdn.net/a775992553/article/details/8790241

    机器字长:是指计算机进行一次整数运算所能处理的二进制数据的位数(整数运算即定点整数运算)。机器字长也就是运算器进行定点数运算的字长,通常也是CPU内部数据通路的宽度。现在一般为32位即4个字节,也有64位和16位的。

         算术类型的存储空间按照机器而定。一般,short类型为半个机器字长,int为一个机器字长,long为1或2个机器字长,float为一个机器字长,double为两个字,long double用3或4个字长。C++标准规定的是每个算术类型的最小存储空间,但其并不阻止编译器用更大的存储空间。如果要保证移植性,尽量用__int16 __int32 __int64吧,或者自己typedef int INT32一下。

    数据类型名称 字节数 别名 取值范围
    int * signed,signed int 操作系统决定,即与操作系统的"字长"有关
    unsigned int * unsigned 由操作系统决定,即与操作系统的"字长"有关
    __int8 1 char,signed char –128 到 127
    __int16 2 short,short int,signed short int –32,768 到 32,767
    __int32 4 signed,signed int –2,147,483,648 到 2,147,483,647
    __int64 8 –9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
    bool 1 false 或 true
    char 1 signed char –128 到 127
    unsigned char 1 0 到 255
    short 2 short int,signed short int –32,768 到 32,767
    unsigned short 2 unsigned short int 0 到 65,535
    long 4 long int,signed long int –2,147,483,648 到 2,147,483,647
    long long 8 none (but equivalent to __int64) –9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
    unsigned long 4 unsigned long int 0 到 4,294,967,295
    enum * 由操作系统决定,即与操作系统的"字长"有关
    float 4 3.4E +/- 38 (7 digits)
    double 8 1.7E +/- 308 (15 digits)
    long double 8 1.7E +/- 308 (15 digits)
    wchar_t 2 __wchar_t 0 到 65,535

    (P:指针的大小为定值4个字节)

    32位机器环境下结果如下:

    Type

    Size

    数值范围

    无值型void

    0 byte

    无值域

    布尔型bool    

    1 byte

    true   false

    有符号短整型short [int] /signed short [int]

    2 byte

    -32768~32767

    无符号短整型unsigned short [int]  

    2 byte

    0~65535

    有符号整型int /signed [int]

    4 byte

    -2147483648~2147483647

    无符号整型unsigned [int]

    4 byte

    0~4294967295

    有符号长整型long [int]/signed long [int]

    4 byte

    -2147483648~2147483647

    无符号长整型unsigned long [int]

    4 byte

    0~4294967295

    long long

    8 byte

    0~18446744073709552000

    有符号字符型char/signed char

    1 byte

    -128~127

    无符号字符型unsigned char

    1 byte

    0~255

    宽字符型wchar_t (unsigned short.)

    2 byte

    0~65535

    单精度浮点型float 

    4 byte

    -3.4E-38~3.4E+38

    双精度浮点型double

    8 byte

    1.7E-308~1.7E+308

    long double

    8 byte

    具体类型的长度可用sizeof进行查看.

    有符号整数计算:把最高位看作符号位

    符号位为0:非负数,其余为即使这个整数的绝对值

    符号位为1:负数,其余位数等于这个整数的先取绝对值后加1;                                                                                            先取绝对值->取反->加1

    -1, 1000 0001, 1111 1110, 1111 1111 
    -2, 1000 0010, 1111 1101, 1111 1110   

    -3, 1000 0011, 1111 1100, 1111 1101   

    -4, 1000 0100, 1111 1011, 1111 1100   

    -5, 1000 0101, 1111 1010, 1111 1011   

    常量定义:#define

    输入输出控制符:

    字符常量:

    ""表示双引号,

    .
  • 相关阅读:
    重新了解Java基础(六)-Java关键字
    重新了解Java基础(五)-Java标识符
    重新了解Java基础(四)-常用开发工具&注释简介
    CentOS 7 安装JDK
    一步一步教你自定义博客园(cnblog)界面
    如何设置文字的阴影
    如何实现2D动画
    跳转九宫格的制作
    风车的动图制作
    心跳的动图制作
  • 原文地址:https://www.cnblogs.com/Dar-/p/9100328.html
Copyright © 2011-2022 走看看