摘要: staticstatic变量C语言中static的用法static变量只能初始化一次在函数内部定义的static变量,在函数调用过程中,能够保存值,意思就是下次调用函数,这个函数里的这个变量有值,不能被再次初始化#includevoid a(){ static int n = 5; pr... 阅读全文
posted @ 2013-05-19 23:54 独墅一枝花 阅读(595) 评论(0) 推荐(0) 编辑
摘要: 问题1:double *d=malloc(10*sizeof(double));d是一个地址,d+1表示的是d后边的另一个double型数字的地址,d+1其实偏移了sizeof(double)即8个字节问题2:malloc向操作系统请求一定长度的连续地址。如果成功返回首地址;如果失败返回NULL问题3:double *d1=malloc(10*sizeof(double));double *d2=malloc(10*sizeof(double));连续两个malloc申请的地址不一定连续,即d1地址块和d2地址块不一定挨着,但是d1和d2内部肯定是连续的,原因见问题1 阅读全文
posted @ 2013-05-19 21:34 独墅一枝花 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 宏定义是写在.h文件里还是.c文件里?1.不管是定义在.h文件还会.c文件,程序都会正常运行。2.如果.h中不需要用到的宏,都定义到.c里,因为等一个工程里需要include多个.h的时候,你在.h里定 义很多宏不方便,因为你一定不能重复定义。但是定义在.c里就不要紧了。3.如果写的宏想要提供给别的程序调用,那么写到.h里面,如果只是在本文件中使用,那么就写到.c里面4.极少会写在*.c文件中的,绝大多数是写在*.h中,因为.c文件要包含h文件的. 头文件里加上 #ifndefXXXXXXX #defineXXXXXXX #endif 的只包含一次保护.我们#define的东西就不怕会重复包含 阅读全文
posted @ 2013-05-19 15:09 独墅一枝花 阅读(7936) 评论(0) 推荐(1) 编辑
摘要: 桶排序算法(BucketSort)工作的原理:将阵列分到有限数量的桶子里。每个桶子再个别排序(有可能再使用别的排序算法或是以递回方式继续使用桶排序进行排序)。代码如下:QuickSort.c文件如下:#include "QuickSort.h"void QuickSort(double R[],int s,int t)//使数据最快的达到目的位置;是随机选择一个数,还是选择第一个数, //肯定选择第一个操作简单,但是效率不见得高{ int i, j; double temp; if(s>=t) //只剩一个... 阅读全文
posted @ 2013-05-19 14:04 独墅一枝花 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序算法:它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:1.比较相邻的元素。如果第一个比第二个... 阅读全文
posted @ 2013-05-19 14:03 独墅一枝花 阅读(218) 评论(0) 推荐(0) 编辑