C
文章平均质量分 76
勿悔Choles
这个作者很懒,什么都没留下…
展开
-
彻底理解指针第一篇
最近在看《C程序设计语言》,看到指针和数组一章。感觉指针真的太好了,以前都怪自己没有好好学习,现在决定好好补充指针知识。 请理解下面几点: 1.指针是变量,存储地址。可以P++,赋值,当成数组成员(指针数组)。 2.数组名是数组首地址,用指针作为形参,来接收参数。 3.在函数定义中,char *p和char p[]等价,这里的P都是指针,第二个的P不是数组名,是指针原创 2013-09-16 20:46:31 · 457 阅读 · 0 评论 -
彻底理解指针第二篇
上午学习了指针的命令行参数,感受不愧是大师的作品啊!写的真赞。。 先来讲讲指针数组: 指针数组主要用在存放长度不同的字符串,数组的每一行可以存储不同的长度。这个在哈希表中利用很广泛。 关于指针数组的初始化,请看下面这个简单的例子: #include #define MAX 10//return month namechar *name(int n){ char原创 2013-09-17 11:18:35 · 469 阅读 · 0 评论 -
彻底理解指针第三篇
今天主要看了函数指针和一个递归下降语法分析程序。感觉收益剖多。 函数本身不是变量,函数名代表函数的首地址,可以用函数指针指向,初始化函数指针要小心,不要加括弧。具体请详细看下面的代码。 此题目:对输入的文本进行快速排序,如果指定参数-n,则可以进行数值排序,否则默认是字典排序。 #include #include #include #define MAXLINE 1原创 2013-09-19 10:34:51 · 541 阅读 · 0 评论 -
彻底理解指针第五篇
这个题目是对之前的改进:统计输入中所有单词的次数。 因为单词不能顺序,也不能对输入的每一个单词进行线性查找,这样复杂度O(n*n),所以此题联想到用二叉树,高校的查找树。 二叉树是递归的经典算法: 1.递归先要搞明白递归过程。 2.递归出口 3.递归返回 对于此题来说,递归过程很简单,递归出口就是单词没有在树中的时候,递归返回,在递归调用结束之后,层层返原创 2013-09-20 20:25:48 · 555 阅读 · 0 评论 -
彻底理解指针第四篇
下午看了结构体,感受颇多。 结构体可以拷贝,赋值,传递给函数,当做函数的返回值,有利于组织复杂的数据,特别是在大程序中。要弄懂结构体,就要搞懂下面这些方面: 1.结构标记:标记用于结构体命名,在定义之后,其实也就是花括号声明。下面两种定义情况一样:struct {...} x,y,z;struct point(标记) pt; 2.结构体可以当作参数来复制,但是更常用的是结原创 2013-09-20 16:35:51 · 579 阅读 · 0 评论 -
彻底理解指针第六篇
对于指针的应用,我想最经典的应该是哈希表了,结构体指针,链表,灵活的应用在哈希表中。哈希表是高效的查找方法,编译器中的符号表用的就是哈希。 哈希的结构:结构体指针数组,数组的每个元素指向某个链表的表头,链表中的各个块用于描述具有该散列值的名字。 这个经典的程序一定要熟练掌握。#include #include #include #define HASHSI原创 2013-09-21 16:00:52 · 693 阅读 · 1 评论