嵌入式学习第十二天

标识符的作用域与可见性

一.作用域

标识符能够生效的范围是作用域,作用域分为全局作用域跟局部作用域

局部作用域:在花括号里的就是局部作用域,所定义的东西只能在自己所处的局部作用域生效(称为局部变量)(栈区)

全局作用域:不在任何花括号里的就是全局作用域《所定义的变量称为全局变量(全局区),能够代替函数实现参数传递

全局变量未被初始化,则系统一定会清0.输出一定为0(位模式清0)

二.变量的生存期

静态生存区与程序运行周期相同

用static修饰的局部变量,把动态生存期改为静态生存期

局部变量的存储类别

register寄存器变量,把变量空间开到CPU内,读写效率非常高

extern 声明外部变量,头文件只放声明不放定义

三.预处理命令

宏定义
不带参宏

其中的标识符一般大写;有一种只有宏名,无内容的宏。

带参宏

注意:宏与函数的区别:宏在程序中直接展开,效率高;函数需要保护现场、恢复现场,效率不高,复用性强。

文件包含

C语言中提供#include命令,双引号表示在当前的main.c所在的目录下,尖括号包起来表在/usr/include/目录下找。

条件编译

#ifndef _FUNC_H_

 #defind _FUNC_H_

#endid _FUNC_H_

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值