NULL在C语言中是=0,在C语言中,如果指针的地址指向0就不会有危险nil是OC的,是一个空对象,发送消息不会出问题。但是当这个对象release之后,你再使用它的地址就会出现各种恐惧的事情,所以一般在一个对象释放之后会加一句代码,xxx
= nil;使它的指针地址为0, 称为安全释放。
分类:
其他好文 时间:
2014-07-22 23:01:13
阅读次数:
233
标准库函数1算数运算stdlib.h2随机数stdlib.h3字符串转化stdlib.h4数学函数
math.h5日期和时间 time.h6信号 signal.h7打印可变参数列表stdarg.h8断言
assert.h抽象数据类型在数据结构中比较仔细运行时环境没看来自为知笔记(Wiz)
分类:
其他好文 时间:
2014-05-01 19:06:09
阅读次数:
305
指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针定义: 类型标识符
*函数名(参数表)eg: int *f(x,y);函数指针是指向函数的指针变量,即本质是一个指针变量。int (*f) (int x); /* 声明一个函数指针
*/ f=func; ...
分类:
其他好文 时间:
2014-05-01 18:51:17
阅读次数:
316
一、引用的本质是什么
说到引用,一般C++的教材中都是这么定义的:
1,引用就是一个对象的别名。
2,引用不是值不占内存空间。
3,引用必须在定义时赋值,将变量与引用绑定。
那你有没有想过,上面的定义正确吗?编译器是如何解释引用的?
这里先给出引用的本质定义,后面我们再进一步论证。
1,引用实际是通过指针实现的。
2,引用是一个常量指针。
3,引用在内存中...
分类:
编程语言 时间:
2014-05-01 18:06:17
阅读次数:
388
一、 序言
上一篇文章中,给出了 trie 树的一个实现。可以看到,trie 树有一个巨大的弊病,内存占用过大。
本文给出另一种数据结构来解决上述问题---- Ternary Search Tree (三叉树)
二、数据结构定义
Trie 树中每个节点包含了 26 个指针,但有很大一部分的指针是 NULL 指针,因此浪费了大量的资源。
一种改进措施就是,以一棵树来代替上述的指针数组。...
分类:
其他好文 时间:
2014-05-01 17:49:30
阅读次数:
326
数组、指针的联系和区别以及数组和指针作为函数参数传递时的异同。...
分类:
其他好文 时间:
2014-04-30 22:37:38
阅读次数:
244
0长度的数组在ISO C和C++的规格说明书中是不允许的,但是由于gcc 预先支持C99的这种玩法,所以,“零长度数组”在gcc环境下是合法的。
先看下面两个例子。
pzeroLengthArray.c
#include
struct str
{
int len;
char *s;
};
struct foo
{
struct str *a;
};
int main()
{...
分类:
其他好文 时间:
2014-04-30 22:22:39
阅读次数:
300
1.stable_sort 和 sort的区别在于 前者作排序可以使原来的"相同"的值在序列中的相对位置不变
如 1 4 6 7 4' (4 和 4'值相等,加上' 表示是2个元素)
那么stable_sort能保证排序完 4 仍然在4' 前 也就是输出1 4 4' 6 7;但是sort 没有这个功能,算法不能保证这一点
2.在标准算法中的一部分算法 如果这个算法默认使用的是
...
分类:
其他好文 时间:
2014-04-29 13:45:20
阅读次数:
273
前面的博客中我们讲到的堆的两种变体,二叉堆和二项堆,今天我们要讲的就是著名的斐波那契堆。二项堆和斐波那契堆对于search操作的支持均比较低效;可能花费一段时间才能找到关键字。为此,涉及给定元素的操作(如DECREASE-KEY和DELETE)均需要一个指针指向这个元素,并且指针作为输入的一部分。...
分类:
其他好文 时间:
2014-04-29 13:36:20
阅读次数:
331
一、捕获异常
异常处理是Java中的功能,在Android中使用SDK进行开发的时候经常要用到。Android原生代码在执行过程中如果遇到错误,需要检测,并抛出异常给Java层。执行原生代码出现了问题,例如使用了空指针、内存泄漏,并且没有做相应的检测盒异常抛出,APP会马上闪退,没有任何提示。...
分类:
移动开发 时间:
2014-04-29 13:32:21
阅读次数:
429