C和指针
文章平均质量分 69
liyakun1990
这个作者很懒,什么都没留下…
展开
-
C和指针 (pointers on C)——第一章:快速上手
C和指针 读后笔记。原创 2014-07-05 23:10:51 · 704 阅读 · 0 评论 -
C和指针 (pointers on C)——第十二章:使用结构和指针
第十二章 使用结构和指针这章就是链表。先单链表,后双向链表。总结:单链表是一种使用指针来存储值的数据结构。链表中的每个节点包含一个字段,用于指向链表的下一个节点。有一个独立的根指针指向链表的第1个节点。单链表只能从一个方向遍历。如何insert单链表:1、新节点的link字段必须设置为指向它的后面节点。2、前一个节点的link字段必须指向这个新节点。为了原创 2014-07-23 21:15:02 · 669 阅读 · 0 评论 -
C和指针 (pointers on C)——第十一章:动态内存分配(下)习题
1、编写calloc,内部用malloc。void *calloc (size_t n, size_t size){ char * memory; memory =(char*) malloc(n * size); while( memory != NULL) { char * ptr; ptr = memory; while ( --n >= 0) { *pt原创 2014-07-23 21:12:11 · 601 阅读 · 0 评论 -
C和指针 (pointers on C)——第十一章:动态内存分配(上)
第十一章 动态内存分配数组在声明的时候,本身作为一个指针常量,它在编译时候内存就已经被分配好了。但是有时候程序不知道这个数组到底有多长,所以,为了防止内存的浪费,C提供了动态内存分配的策略。其实,作为独立的一章,本章显得内容不多。malloc,free,calloc,realloc就没有了,但是它包含很多用法,也有很多陷阱。总结:malloc和calloc函数都用于动态分配原创 2014-07-21 22:58:04 · 572 阅读 · 0 评论 -
C和指针 (pointers on C)——第十章:结构体和联合(下)习题
//1、这一章的习题纯粹为了刷存在感。。。typedef struct phone{ char * quhao; char * jiaohuantai; char * zhanhaoma;};typedef struct call{ char * date; char * time; phone * shiyong; phone * self; phone * huji原创 2014-07-21 22:55:41 · 671 阅读 · 0 评论 -
C和指针 (pointers on C)——第十章:结构体和联合(上)
第十章 结构和联合这个部分先介绍了.运算符,可以供直接访问,还介绍了->运算符,它代替结构体指针的间接访问操作(*struct).xxx这一章新手理解起来不算太难,没有学过操作系统的话理解位段、对齐等概念会有一些问题。越发的说明了指针和内存绝对是C的核心。总结:结构声明列出了结构包含的成员列表,不同类型的值可以存储在一起。不同的结构声明即使他们的成员列表相同也被认为原创 2014-07-20 20:01:31 · 690 阅读 · 0 评论 -
C和指针 (pointers on C)——第八章:数组(上)
第八章数组本章原书作者的意图主要是跟指针进行比较,两者的共同点以及区别。因为小弟我的汇编基础为0,因此8.1.4指针的效率这一块我实在是不明白。本科时候学的数组绝对不会像现在一样学数组,所以好好学数组!它和指针在作为函数参数传递时是不是可以混用?声明数组和声明指针在编译过程中是否相同?形参可以省略几个下标,为什么?char *a = "hello";和char a原创 2014-07-18 17:21:54 · 563 阅读 · 0 评论 -
C和指针 (pointers on C)——第九章:字符串、字符和字节(上)
第九章字符串、字符和字节这一块在初学的时候很容易被大家忽视,但字符串作为一种重要的数据类型,没有在C中显式的说明。这样看起来C++定义了string的数据类型实在是带来了不少福音。如果想用C玩OJ或者数据结构与算法的话,这一章需要仔细阅读,因为这是你仅有能用到的字符串处理的标准库。总结:C的字符串标准库使用需要声明"string.h"。strlen用于计算一个字原创 2014-07-19 13:13:04 · 665 阅读 · 0 评论 -
C和指针 (pointers on C)——第八章:数组(下)习题
本章习题很经典:3-4判断单位矩阵5、矩阵乘法8、八皇后问题其中八皇后问题我感觉存在问题,回溯法我运用的不好就先不挂了。题目请见 http://download.csdn.net/download/wangpegasus/57017653、bool identity_matrix(int matrix[10][10]){ int length = 10;原创 2014-07-19 11:50:52 · 680 阅读 · 0 评论 -
C和指针 (pointers on C)——第七章:函数(下)习题
这次的题目很经典。1、Hermite Polynomials2、求两个整数最大公约数3、ATOI4、可变参数列表的使用具体的题目在这里:题目请见 http://download.csdn.net/download/wangpegasus/57017651、int hermite(int n, int x){ if (n < 1) { return 1;原创 2014-07-16 18:41:20 · 640 阅读 · 0 评论 -
C和指针 (pointers on C)——第二章:基本概念
第二章 基本概念不良的代码风格,不良的文档直接导致软件开发及维护代价高昂。其实一个人总有他自己的代码风格,主要是坚持一种合理的风格,让大家容易读懂。原创 2014-07-06 19:28:39 · 587 阅读 · 0 评论 -
C和指针 (pointers on C)——第十四章:预处理器
第十四章 预处理器我略过了高级指针话题那一章。太多的小技巧和太多的学术性探讨并不适合现在的我。不过我确实是读了,很多地方没有读懂,如果谁读了私下可以交流一下。有的小技巧还是非常有意思。预处理器这一章的内容,大家肯定都用过,什么#include,#define #ifdef #undef这些,但是绝对用的不多。作为全面了解学C,还是应该都看一看。预处理器用法很讲究,用不好会失误,原创 2014-07-25 16:54:49 · 571 阅读 · 0 评论 -
C和指针 (pointers on C)——第六章:指针(下)习题
有一定的难度,作者只做了前三题!题目请见 http://download.csdn.net/download/wangpegasus/57017651、char *find_char(char const *source, char const *chars){ char *ptr; if(source != NULL && chars != NULL) { for (;原创 2014-07-14 17:22:25 · 612 阅读 · 0 评论 -
C和指针 (pointers on C)——第四章:语句(下)习题解答
题目请见 http://download.csdn.net/download/wangpegasus/5701765第四章以下通过VS20121、#include "stdafx.h"#include double sqrt(double temp){ double before, after; before = 1.0; after = 1.0; do {原创 2014-07-11 02:42:51 · 821 阅读 · 0 评论 -
C和指针 (pointers on C)——第六章:指针(上)
第六章 指针这一章,就明显触痛初学者敏感之处了。我也是在一段时间不用C以后就会对这一部分生疏,好吧,其实是对高级指针那块生疏。当然这一部分总有很多借鉴之处,比如数组范围的问题等,要不我也不会大夏天的这么虐自己看这种书。总结:指针变量的值并非它所指向的内存位置所存储的值,而是保存了指向的变量的地址。需要通过间接访问符*来访问指向的变量的值。单单声明一个指针,而并不原创 2014-07-13 10:40:37 · 603 阅读 · 0 评论 -
C和指针 (pointers on C)——第五章:操作符和表达式
第五章 操作符和表达式这一章如果没做过玩过单片机、汇编的话,读起来可能比较吃力,尤其是在移位运算符、位运算符应用上。另外多注意一下左值和右值的理解。总结:算术操作符、赋值操作符、关系操作符、条件操作符。短路求值(short-circuited evalution):如||这样的二目操作符,如果它的左操作数是真,右操作数便不再求值。带来的后果是如果右操作数的数组下标不原创 2014-07-12 09:58:46 · 806 阅读 · 0 评论 -
C和指针 (pointers on C)——第三章——数据
第三章 数据 这章非常重要,尤其是作用域、链接属性、存储类型,const、extern和static关键字的使用。几乎就是所有公司C++面试里的第一题。 总结:具有external链接属性(包括external、internal、None)的实体在其他语言的术语里称为全局实体(global),所有cpp里的函数都可以访问它。只要声明的时候在函数体或代码块外部(包括main函原创 2014-07-10 00:56:19 · 770 阅读 · 0 评论 -
C和指针 (pointers on C)——第四章:语句(上)
第四章——语句(上)总结总结!!!C没有布尔类型,所以在一些逻辑判断时候必须用整型表达式,零值为假,非零值为真。for比while把控制循环的表达式收集起来放在一个地方,以便寻找。do语句比while语句类似,但是前者能够保证循环体至少执行一次。不要用goto。switch...case...在没有加break时候多半有问题,我有一篇文章曾专门说这个事儿。详情见http原创 2014-07-10 23:20:51 · 616 阅读 · 0 评论 -
C和指针 (pointers on C)——第十五章:输入输出函数
第十五章 输入输出函数这一章读完的第一感觉就是“呵呵”。如果说上过C语言课,基本上scanf()/printf()算是用的比较熟练了。尤其是那些抽象的格式说明。还有scanf()为什么要加括号。读过本书前面的内容的话,getchar(),putchar(),gets(),puts()这些应该也问题不大。再如果的话,你学过计算机图形学,你玩过OpenGL,听说过双缓存机制,那原创 2014-07-26 16:15:04 · 544 阅读 · 0 评论 -
C和指针 (pointers on C)——第七章:函数(上)
第七章 函数这一章对于有一定C的基础的人有一定优秀代码风格的人来说,并不是很虐。关于stdarg宏可能有些陌生,它负责可变参数列表的定义。总结:新式风格和旧式风格就不要提了。八百年前的事情。函数常见的是把原型放在一个单独的文件里,当其他文件需要这个原型时,就用#include指令把这个文件包含进来,这个技巧可以使原型必需的拷贝份数降低到最低,有助于提高程序的可维护性。r原创 2014-07-16 12:22:48 · 580 阅读 · 0 评论