- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 .h文件,
<br />用eclipse环境里,在工程里面添加文件,最后,是做个.c和.h文件,并且把一些结构体、声明等放在.h文件里面。<br />今天本想不加.h文件直接用extern 声明,但是总过不了,不知道怎么回事。后来,只加.h,把函数声明放.h文件里面还是过不了,知道,放进去结构体声明才过。
2010-09-16 11:25:00 488
原创 指针与数组的关系
指针与数组是C语言中很重要的两个概念,它们之间有着密切的关系,利用这种关系,可以增强处理数组的灵活性,加快运行速度,本文着重讨论指针与数组之间的联系及在编程中的应用。<br /> 1.指针与数组的关系<br /> 当一个指针变量被初始化成数组名时,就说该指针变量指向了数组。如:<br /> char str[20], *ptr;<br /> ptr=str;<br /> ptr被置为数组str的第一个元素的地址,因为数组名就是该数组的首地址,也是数组第一个元素的地址。此时可以认为指针ptr就是数组
2010-09-14 12:25:00 1788
原创 malloc()和free()
<br />一、malloc()和free()的基本概念以及基本用法:<br />1、函数原型及说明:<br />void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。<br />关于分配失败的原因,应该有多种,比如说空间不足就是一种。<br />void free(void *FirstByte): 该函数是将之前用malloc分配的空间还给程序或者是操作系统,也就是释放了这块内存,让它重新得到自
2010-09-13 16:45:00 527
原创 内存泄漏和内存溢出
一般我们常说的内存泄漏是指堆内存的泄漏。堆内存是指程序从堆中分配的,大小任意的(内存块的大小可以在程序运行期决定),使用完后必须显示释放的内存。应用程序一般使用malloc,realloc,new等函数从堆中分配到一块内存,使用完后,程序必须负责相应的调用free或delete释放该内存块,否则,这块内存就不能被再次使用,我们就说这块内存泄漏了。 内存溢出:比如数组越界、指针移动越界
2010-09-13 14:54:00 374
原创 free的使用
想用释放一段内存 char *buf(10000个字节)能简单的free(buf)吗?显然不能!!! 这个一开始我犯这样的错了。内存中可能有很多的空字符('/0').free会释放传入参数的类型大小,sizeof,当然如果是字符串,会计算字符串的长度,以'/0'结束。那么如何释放呢?for(i=0;i{ free(buf[i]);}如果不是用buf[i],而是用buf呢??会不会有问题呢?该内存中间有空字符存在时,会free一段一段的,那么后面的计算会……
2010-09-13 14:52:00 824
uCOS-II中文电子书 chm
2009-10-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人