• 学习笔记:不同编程语言的数据类型总结区分


    数据类型时编程的基础也是需要核心掌握的知识点,要能够分清楚出不同数据类型表示的数据以及数据需要定义的数据类型。不同的系统或是编程语言,在定义数据类型时可能有所区别,在学习运用时要加以区分,避免混淆,这里我对数据进行了简单的区分和总结,加深一下印象。

    Java数据类型

    8种基本数据类型:byte,short,int,long,float,double,char,boolean。

    类型 描述 范围
    byte 8位,有符号,默认值 0 -2^7 - 2^7 -1
    short 16位,有符号,默认值 0 -2^15-2^15 -1
    int 32位,有符号,默认值 0 -2^31-2^31 -1
    long 64位,有符号,默认值 0L -2^63-2^63 -1
    float 单精度32位,默认值0.0f
    double 双精度64位,默认值0.0d
    char 单个16位Unicode字符 u0000-uffff
    boolean 一个比特位,false/true true/false

    引用数据类型:数组,类,接口

    C语言数据类型

    C语言中有4种类型的数据类型

    类型 包含的类型
    基本数据类型(Basic Data Type) char,int, float, double
    派生数据类型(Derived Data Type) array, pointer, structure, union
    枚举数据类型(Enumeration Data Type) enum
    Void数据类型(void Data Type) void

    C语言基本数据类型:内存大小可能会根据32位或64位操作系统而有所变化;在没有标明unsigned情况下,大多数默认情况是有符号的。

    类型 描述 值范围
    char 1字节/8位,字符类型 -128 到 127
    unsigned char 1字节/8位,无符号char 0 到 255
    short 2 字节/16位,短整型 -32,768 到 32,767
    unsigned short 2 字节/16位,无符号short 0 到 65,535
    int 4 字节/32位,整型 -2,147,483,648 到 2,147,483,647
    unsigned int 4 字节/32位,无符号int 0 到 4,294,967,295
    long 4 字节/32位,长整型 -2,147,483,648 到 2,147,483,647
    unsigned long 4 字节/32位,无符号long 0 到 4,294,967,2957
    float 4字节,6~7位有效数字 -3.4E-38 到 3.4E+38
    double 8字节,15~16位有效数字 -1.7E-308 到 1.7E+308
    long double 16字节,18~19位有效数字 -1.2E-4932 到 1.2E+4932

    注意:C语言本身是没有bool类型的,一般用int取代或者自定义枚举。但在C99标准里面,又定义了bool类型变量,只要引入头文件 <stdbool.h>,就能在C语言里面正常使用bool类型。

    C++数据类型

    总的来说,C++的基本数据类型和C语言的差不多。

    类型 关键字
    字符型 char
    整型 int
    浮点型 float/double
    布尔型 bool
    宽字符型 wchar_t
    无类型 void

    可以使用一个或多个类型修饰符进行修饰:signed,unsigned,short,long。

    类型 描述 范围
    char 8位/1 字节 -128 到 127 或者 0 到 255
    unsigned char 8位/1 字节 0 到 255
    int 32位/4 字节 -2147483648 到 2147483647
    unsigned int 32位/4 字节 0 到 4294967295
    short int 16位/2 字节 -32768 到 32767
    unsigned short int 16位/2 字节 0 到 65,535
    long int 64位/8 字节 -/+9,223,372,036,854,775,808
    unsigned long int 64位/8 字节 0 到 18,446,744,073,709,551,615
    float 4 字节 +/- 3.4e +/- 38 (~7 个数字)
    double 8 字节 +/- 1.7e +/- 308 (~16 个数字)
    long double 16 字节 +/- 1.2e +/- 4932 (~19 个数字)
    wchar_t 2 或 4 字节 1 个宽字符

    补充:在C/C++中可以使用sizeof()运算符返回数据类型所占的内存字节,32位系统和64位系统的结果可能是不同的。下面是一个简单的对比:

    数据类型 32位编译器 64位编译器
    char 1个字节 1个字节
    char*(即指针变量) 4个字节 8个字节
    short int 2个字节 2个字节
    int 4个字节 4个字节
    unsigned int 4个字节 4个字节
    float 4个字节 4个字节
    double 8个字节 8个字节
    long 4个字节 8个字节
    long long 8个字节 8个字节
    unsigned long 4个字节 8个字节
  • 相关阅读:
    test
    有偏估计和无偏估计
    Spark Shuffle
    Adaboost算法推导
    Spark优化 – 基础篇
    决策树 – 回归
    HBase的文件合并(minor/major compact)
    HBase的列式存储
    centos7配置固定ip
    Generate a Certificate Signing Request (CSR) in macOS Keychain Access
  • 原文地址:https://www.cnblogs.com/microbit1024/p/11622687.html
Copyright © 2020-2023  润新知