const&static&extern
2024-09-20 08:12:30
const
结论:
如果const写在指针变量名的旁边, 那么指针的指向不能变, 而指向的内存空间的值可以变
如果const写在数据类型的左边或者右边, 那么指针的指向可以改变, 但是指向的内存空间的值不能改变
// 字符串常量,修饰account,既:account这个是常量不能改,但是他所指向的值 @"这个是可以改的",而且文档字符串常量都是这样的,颜色和宏的颜色也不一样。
static NSString * const account = @"account"; // 修饰指针指向的字符串,既:@"account1",是不能改的,可以用其他的指针指。
static NSString const *account = @"account1";
static
// 全局变量:只有一份内存,所有文件共享,与extern联合使用。
int a = ; // static修饰全局变量
static int age = ; - (void)test
{
// static修饰局部变量
static int age = ;
age++;
NSLog(@"%d",age);
}
上诉两个statuc分别修饰了全局变量和局部变量,作用效果同
结论:
局部变量:1.延长局部变量的声明周期,程序结束时候才会销毁。
2.局部变量只会生成一份内存,只会初始化一次。
3.改变局部变量的作用域。
全局变量:1.只能在本文件访问,修改全局变量作用句,生命周期不变。
2.避免重复定义全局变量。
extern
获取全局变量(包括全局静态变量)的值,不能用于定义变量
最新文章
- bzoj 1391
- SQL查询符合条件的记录的总数
- 【BZOJ】2078: [POI2004]WYS
- css模糊效果
- 图像金字塔及其在 OpenCV 中的应用范例(下)
- Shell学习笔记 - 循环语句
- 【HDOJ】1016 Prime Ring Problem
- toast组件较为完美版本
- 浅析C++基础知识
- FZU2082
- linux复制文件命令scp
- Angular之Providers (Value, Factory, Service and Constant )
- CentOS 修改主机名
- BZOJ1419: Red is good
- Linux突然无法使用,是内存不足的问题
- adb常用命令(转)
- shell脚本学习之case用法及实例
- Ueditor设置默认字体、字号、行间距,添加字体种类(转)
- 【RAY TRACING THE REST OF YOUR LIFE 超详解】 光线追踪 3-7 混合概率密度
- openh264 api 使用
热门文章
- cocos2dx 云彩特效
- @RequestParam和@RequestBody的区别-------springMVC
- TOMCATE8下面项目启动问题
- golang的sync包例子
- [Java][Web]Request 实现转发和 MVC 设计模式
- 科普Spark,Spark是什么,如何使用Spark
- Window下MySql 5.6 安装后内存占用很高的问题
- windows下使用SQLPLUS制作BAT执行SQL文件
- maven中的pom配置文件标签的详细介绍
- Django-2的路由层(URLconf)