2012年3月19日

指针(二)

摘要: 1、指向数组的指针例子:int a[]={'a','b','c'};int *p=a;则*(p+i) 等价于a[i]亲,注意不要越界噢,尤其是处理字符窜的时候,注意\0!!2、指针数组还是一个数组,只不过数组元素是指针了例子:char *argv[]就非常典型3、指针与字符窜处理字符窜的时候要主意\0这个小子例子: /* 2 *功能:自己实现strcmp函数 3 *心得:... 阅读全文

posted @ 2012-03-19 20:51 阿杜的世界 阅读(137) 评论(0) 推荐(0)

指针(一)

摘要: 1、指针的本质:地址。指针是一个变量,一般4个字节大小,这个变量的value是一个内存地址。2、指针的类型:从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。让我们看看例一中各个指针的类型:(1)int *ptr; //指针的类型是int *(2)char *ptr; //指针的类型是char *(3)int **ptr; //指针的类型是 int **(4)int (*ptr)[3]; //指针的类型是int(*)[3](5)int *(*ptr)[4]; //指针的类型是 int*(*)[4]怎么样?找出指针的类型的方法是不是很简 阅读全文

posted @ 2012-03-19 19:53 阿杜的世界 阅读(176) 评论(0) 推荐(0)

栈内存与堆内存

摘要: 一、程序在编译的时候占用的内存分为以下几个部分:1 、栈区( stack )— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限.2 、堆区( heap )— 亦称动态内存分配.程序在运行的时候用malloc或new申请任意大小的内存,程序员自己负责在适当的时候用free或delete释放内存。动态内存的生存期可以由我们决定,如果我们不释放内存,程序将在最后才释放掉动态内存.但是,良好的编程习惯是:如果某动态内存不再使用,需要将其释放掉,否则,我们认为发生了内存泄漏现象。注意它与数据 阅读全文

posted @ 2012-03-19 18:57 阿杜的世界 阅读(171) 评论(0) 推荐(0)

导航