嵌入式综合复习(记录三)

变量{
    <存储类型>   <数据类型>   变量名;
    局部变量{
        定义位置是在模块内部
        作用域:模块内部
        生命周期: 模块结束的时候
        普通的局部变量如果未初始化,系统给它一个随机数.
    }
    全局变量{
        定义位置所有模块外部
        作用域: 整个程序
        生命周期: 程序结束的时候
        如果未初始化,系统帮它初始化为0
    }

存储类型: 
    1.auto(自动存储类型): auto int a;
    2.static(静态存储类型):1.修饰局部变量,改变变量的生命周期(延长到程序结束的时候),但是作用域不变,只初始化一次。
                            2.修饰全局变量,生命周期不变,限制了变量的作用域(只能在本文件中使用).
                            3.修饰函数,生命周期不变,限制了函数的作用域(只能在本文件中使用)
    3.extern(修饰函数与全局变量): 修饰函数和全局变量代表该函数和全局变量能够被其他文件所引用.通常函数和全局变量默认是extern类型.
    4.register(寄存器类型):表明把变量申请到寄存器上面.处理速度快,数量少(很有可能申请不成功自动转为auto类型). register int a; 
}
    类型转换{
        强制转换: (数据类型)变量名; 例子: float a = 1.634; int b = (int)a;  b = 1 ;
        数据精度改变
    }
    隐式转换{
        低精度往高精度. 最终数据类型和左值匹配. int c , a=2; float b = 1.23; c = a+b; c =3;
        有符号往无符号转换.
    }
}

猜你喜欢

转载自blog.csdn.net/Wshichuan/article/details/82191198