• C语言 | 类型的基本归类


    类型的基本归类

    整型家族

    整型家族
    charunsigned char
    signed char
    shortunsigned short [ int ]
    signed short [ int ]
    intunsigned int
    signed int
    longunsigned long [ int ]
    signed long [ int ]

    那么为什么char字符型也要被归类为整型家族呢?

    这是因为字符在内存中存储的是字符的ASCII码值ASCII码值是整型,所以字符类型归类为整型家族。 

    signed与unsigned的意义
    • signed是有符号的
    • unsigned是无符号的

    在编译器中,其实signed int有符号整型与int是相同的,默认int a的a变量就是有符号的,但是在定义无符号的整型时,我们要注意不能缺少unsigned,例如:

    1. int a;
    2. //signed int a;
    3. unsigned int a;

    同理,其实int就是signed int,short就是signed short,long就是signed long,那么char呢?注意这里的char与它们是不同的

    • char是否是signed有符号的,在C语言标准中是为定义的,取决于不同的编译器中。

    这里注意在整型家族中,我们并没有提到long long类型,因为long long是一种较新的类型,在一些古老的编译器中,也不能支持使用long long,所以大家需要酌情使用long long类型。

    浮点数家族

    float
    double

    构造类型

    构造类型,也称为自定义类型,就是可以根据自己的需求来设定的自定义类型。

    数组类型
    结构体类型struct
    枚举类型enum
    联合类型union

    指针类型

    int * pi;
    char * pc;
    float * pf;
    void * pv;

    空类型

    • void 表示空类型(无类型)
    • 通常应用于函数的返回类型函数的参数指针类型
    1. void test(void)
    2. {
    3. }

    我们看一下上面的代码,第一个void是表示test函数不会返回任何值;而第二个void则是表示test函数没有参数。

    在一些古老的编程书籍中,会有在主函数中传参为void,这就表示,在使用main主函数时,不需要传参,但是其实main函数是有三个参数的。

    1. int main(void) //在使用main主函数时,可以不传参
    2. {
    3. }
    4. //main主函数的三个参数
    5. int main(int argc,char * argv,char * envp[])
    6. {
    7. }

    大概了解了这个类型之后,今天讲的主要是整型家族以及浮点型家族在内存中的存储。 


    在编程中,我们需要创建变量,创建变量就需要开辟空间。而数据在内存中存储的都是二进制,计算机能够处理的是二进制的数据,整型和浮点型数据在内存中也都是以二进制的形式,进行存储的,那么整型浮点型二进制的表达形式有什么差异呢?

  • 相关阅读:
    Disney验厂要求、验厂流程及审核注意事项
    C学生数据库_将链表保存进数据库
    初步学习http请求走私
    SpringCloud 微服务(三)-分布式事务问题
    如何避免旧请求的数据覆盖掉最新请求
    电源模块选型指导
    【Spring Cloud】Docker的基本操作
    【邻接表】【数组表示链表】怎么用数组链表 表示 邻接表
    云对象 - 重新定义前后端交互
    Java寻找两个正序数组的中位数
  • 原文地址:https://blog.csdn.net/2301_78131481/article/details/133774939