基础不牢,地动山摇!

指针和数组参数

作为函数参数的数组名和指针是相等的。之所以要把传递给函数的数组参数转换为指针是出于效率的考虑。在c语言中,所有非数组形式的数据实参均以传值形式调用。然而,不过拷贝整个数组,无论在时间还是在内存上的开销都有可能非常大。而且绝大部分情况下,你其实并不需要整个数组的拷贝,你只想告诉函数在那一时刻对那个特...

2015-02-03 23:42:12

阅读数:500

评论数:0

《C和指针》笔记

第一个程序是第一章中的例子,第一次使用vim和gcc,花了好长时间才调试好,写完后一直放着没有整理。这里把一些零碎的东西整理一下。 这个程序的目的是从标准输入读取文本并对其进行修改,然后把它显示到标准输出。首先读取一行串列标号,这些列标号成对出现,表示输入行的列范围。这串列标号以一个负值结尾。剩...

2015-02-03 23:17:32

阅读数:422

评论数:0

c中变量在栈中的地址

观察下面一段代码,看看c中自动变量在栈中的地址关系: #include void func(int a,int b){ printf("a:%p,b:%p\n",&a,&b); } int main(){ int a=0,b=1; printf(&q...

2015-02-03 22:48:50

阅读数:1162

评论数:0

C中函数指针的用法

理解了C中的声明和指针的话题后再来看函数指针的用法就很容易了。 C中函数指针主要有两个用途: 1.作为参数传递给另外一个函数(即作为回调函数) 2.转换表(jump table) 下面分别来介绍作为回调函数的用法和作为转换表的用法 1.回调函数 在链表的查找中使查找函数与类型无...

2015-02-03 21:02:18

阅读数:638

评论数:0

双链表操作

处理完了单链表,这次处理双链表。 在一个双链表中,每个节点都包含两个指针,指向前一个节点的指针和指向后一个节点的指针。这可以使我们以任何方式遍历双链表,甚至可以忽略前后地在双链表中访问。下面的图示展示了一个双链表: 下面是节点类型的声明文件: double_linked_list_n...

2015-02-03 17:24:13

阅读数:595

评论数:0

单链表操作

摘自《C和指针》中关于单链表的描述 在单链表中,每个节点包含一个指向链表下一个节点的指针。链表最后一个节点的指针字段的值为NULL,提示链表后面不再有其它节点。在你找到链表的第一个节点后,指针就可以带你访问剩下的所有节点。为了记住链表的起始位置,可以使用一个根指针(root pointer)。根指...

2015-02-03 15:39:30

阅读数:631

评论数:0

提示
确定要删除当前文章?
取消 删除