数据类型的本质

    数据类型:所谓的数据类型都是帮我们定义好一个大小,我们不用一个bit一个bit的操作。

                变量名:一个固定内存大小的别名,根据这个别名可以操作内存。

                表示方式:1、基础数据类型。

                                  2、自定义数据类型(typedef)例:(typedef unsigned int uint; 

                                                                                            #define uint unsigned int)

                                                使用 typedef必须加分号结束并且用uint代替unsigned int。是我们更好的理解程序的语义,本质并没有发生改变,并没有创建新的数据类型。

                  使用方式:类型名 变量名;

                                属性: auto、static、register。

wKioL1gpvreyJKlGAAV7sAfqd1k232.png-wh_50

                    register变量由编译器决定是否存储在寄存器中。


生命周期和作用域:

                生命周期:当前地址的存在的时间。

                作用域:c语言用大括号{}来限定作用域。是从语法层面进行规范的

例:

int main()
{
    {
        static int j = 100;
    }
    j=20;//会报错,因为j的作用域只是在{}之内而j的生命周期会一直存在直到main函数结束
    .....
    .....
    return 0;
}