静态变量和单例模式1.静态变量静态变量(Static Variable)在计算机编程领域指在程序执行前系统就为之静态分配(也即在运行时不再改变分配情况)存储空间的一类变量。与之相对应的是在运行时只暂时存在的自动变量(即局部变量)与以动态分配方式获取存储空间的一些对象,其中自动变量的存储空间在调用栈上...
分类:
其他好文 时间:
2015-04-03 19:19:18
阅读次数:
145
Blocks 是C语言的扩充功能,带有自动变量的匿名函数。C 函数指针类型变量 vsBlock 类型变量C 函数指针类型变量Block 类型变量返回值类型 方法名 参数列表 表达式int func(int count){ return count + 1;}^返回值类型参数列表 表达式^int (....
分类:
其他好文 时间:
2015-03-20 18:00:36
阅读次数:
139
一、auto关键字的前世从C语言开始,auto关键字就被当作是一个变量的存储类型修饰符,表示自动变量(局部变量)。它不能被单独使用,否则编译器会给出警告。#include int main(){ int a = 123; auto int b = 234; ...
分类:
编程语言 时间:
2015-03-13 18:37:00
阅读次数:
179
一、auto关键字的前世
从C语言开始,auto关键字就被当作是一个变量的存储类型修饰符,表示自动变量(局部变量)。它不能被单独使用,否则编译器会给出警告。
#include
int main()
{
int a = 123;
auto int b = 234;
auto c = 345;
printf("a = %...
分类:
编程语言 时间:
2015-03-12 17:20:39
阅读次数:
280
C语言中数据有两种属性:数据类型和存储类别。数据类型定义了数据格式(长度),存储类别定义了数据的作用域和生命期。1.变量的声明1.1变量的声明的一般形式:存储类别 数据类型 变量名;数据类型以int为例:自动变量:auto int i;//自动变量是局部变量局部变量:在函数内部定义的变量,局部变量缺...
分类:
编程语言 时间:
2015-03-07 15:23:12
阅读次数:
179
2.3.2 截获自动变量
通过转换后的源码可以发现,Block语法中使用的自动变量被作为成员变量追加到__main_block_impl_0结构体中,Block中没有使用的自动变量不会被追加,所以Block的变量截获只针对Block使用的自动变量。
源码:
#include
//不导入库文件无法运行
int
main() {
int val1=0;
int...
分类:
移动开发 时间:
2015-03-04 11:09:40
阅读次数:
159
自动变量说明$@规则中的目标集合,使用的时候是一个一个的从集合中取元素的。a b : a.c b.cecho ($@).o结果: a.o b.o$%如果目标是归档成员,则该变量表示目标的归档成员$<依赖目标中的第一个目标$?所有比目标新的依赖目标的集合。以空格分隔。$^所有的依赖目标的集合。以空格分...
分类:
其他好文 时间:
2015-02-08 23:11:53
阅读次数:
220
__block说明符严格意义上来说是一种存储域说明符,用来指定该变量的存储位置
在C语言中,static表示存在静态变量区域,auto表示存储在栈中,register表示存在寄存器
__block变量是结构体类型的自动变量
Block是objective-c对象,_NSConcreteStackBlock表示存储为栈,_NSConcreteGlobalBlock表示全局变量区...
分类:
其他好文 时间:
2015-02-07 17:29:06
阅读次数:
118
2015.2.2星期一,阴天内存管理:内存的分配和释放等静态和动态内存:主要是在释放方式上的区别静态变量:编译时就已经确定,定义在函数外面自动变量:在程序运行时才能在栈中确定只读数据节:存放常量的地方,包括字符常量,不修改的数据查看数据存放在那个节点:(用命令)readelf -S (查看节点号和....
分类:
其他好文 时间:
2015-02-03 00:26:31
阅读次数:
251
自动变量假设您编写一个编译‘.c’文件生成‘.o’文件的规则:您怎样编写命令‘CC’,使它能够操作正确的文件名?您当然不能将文件名直接写进命令中,因为每次使用隐含规则操作的文件名都不一样。您应该使用make的另一个特点,自动变量。这些变量在规则每次执行时都基于目标和依赖产生新值。例如您可以使用变量‘...
分类:
其他好文 时间:
2015-02-02 21:14:20
阅读次数:
199