057.Extern Global Variable 外部全局变量
2015-10-26 16:13
218 查看
--------------- main.m ---------------
#import <Foundation/Foundation.h>
int change(); // 声明外部函数
int main()
{
extern int count; // 声明外部全局变量
change(); // 调用外部函数
NSLog(@"%d" , count);
count = 50; // 对count变量赋值
change();
}
--------------- extern.m ---------------
int count = 0;
void change()
{
NSLog(@"count的值为:%d" , count);
count = 20;
}
一、编写本节代码的具体步骤:
1.参照052节的代码编写步骤。(将其中的draw.m改为extern.m即可)
二、本节代码涉及到的知识点:
1.就像调用其他源文件中的函数一样,访问其他源文件中的变量,也必须先声明,后使用。
2.static修饰一个全局变量,则该变量被称为“内部全局变量”,只能在本文件内部使用。
即使在其他源文件中声明该变量,也无法访问。
3.定义一个变量时,如果没有使用static修饰,也没有使用extern修饰,
那么该变量默认是被extern修饰的。
4.如果用static修饰一个局部变量,则该变量被称为“静态局部变量”,
静态局部变量的特点是它的值在函数调用结束之后依然可以保留。
#import <Foundation/Foundation.h>
int change(); // 声明外部函数
int main()
{
extern int count; // 声明外部全局变量
change(); // 调用外部函数
NSLog(@"%d" , count);
count = 50; // 对count变量赋值
change();
}
--------------- extern.m ---------------
int count = 0;
void change()
{
NSLog(@"count的值为:%d" , count);
count = 20;
}
一、编写本节代码的具体步骤:
1.参照052节的代码编写步骤。(将其中的draw.m改为extern.m即可)
二、本节代码涉及到的知识点:
1.就像调用其他源文件中的函数一样,访问其他源文件中的变量,也必须先声明,后使用。
2.static修饰一个全局变量,则该变量被称为“内部全局变量”,只能在本文件内部使用。
即使在其他源文件中声明该变量,也无法访问。
3.定义一个变量时,如果没有使用static修饰,也没有使用extern修饰,
那么该变量默认是被extern修饰的。
4.如果用static修饰一个局部变量,则该变量被称为“静态局部变量”,
静态局部变量的特点是它的值在函数调用结束之后依然可以保留。
相关文章推荐
- 第九周项目一~~~猴子选大王(数组版)
- c/c++ 学习笔记
- 获取手机版本,手机型号,系统版本,手机设备唯一序列号,手机应用版本,手机网络类型的总结
- 一个java 验证码的实现提供多种的实现
- 机器学习中的数学(1)-回归(regression)、梯度下降(gradient descent)
- java 读取Properties文件
- [转]依赖注入框架Autofac的简单使用
- java从0开始学——数组,一维和多维
- (原创)c#学习笔记06--函数01--定义和使用函数01--返回值
- Android开发之旅:应用程序基础及组件
- android设备中的媒体库
- Skip List(跳跃表)原理详解与实现
- 058.Define 宏定义
- IOS最严格身份证号验证
- 第七周项目3 负数把正数赶出队列
- 059.Define 宏定义的嵌套
- “System.Reflection.TargetInvocationException”类型的异常在 mscorlib.dll 中发生,但未在用户代码中进行处理
- 多语言解决方案-(优)
- log4j 日志配置 properties 和 xml形式两种
- 四、持久存储 ----- 数据保存到文件