<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[bigloomy的专栏]]></title><description><![CDATA[《C语言的那些小秘密》相关知识点，包括已发表的博客和未发表的都已整理成书出版------《C语言进阶：重点、难点与疑点解析》，如有所需可以下载pdf文档或者购买图书，各类在线销售网站及图书城均有销售。]]></description><link>https://blog.youkuaiyun.com/bigloomy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; bigloomy]]></copyright><item><title><![CDATA[C语言的那些小秘密之异常处理]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6659146</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6659146</guid><author>bigloomy</author><pubDate>Thu, 04 Aug 2011 11:01:06 +0800</pubDate><description><![CDATA[很多读者在此之前可能根本没有使用或者听说过C语言的异常处理，印象中都是C++或者java才有的东西，C语言怎么会有异常处理呢？当然估计在大学出于一般的性的学习考试之类的话老师几乎是不会提及C语言的异常处理的，那么到底什么是异常处理？C语言中又该如何来实现异常处理呢？那么我们今]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之预处理]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6649507</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6649507</guid><author>bigloomy</author><pubDate>Mon, 01 Aug 2011 08:27:33 +0800</pubDate><description><![CDATA[预处理是C语言的一个重要知识点，它能改善程序设计的环境，有助于编写易移植、易调试的程序。因此，我们有必要掌握好预处理命令，在自己编程的时候灵活的使用它，使得编写的程序结构优良，更加易于调试和阅读。接下来我尽可能的把预处理中重要知识点向读者讲解清楚，使读者能够在自己以后编程的过程中]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之volatile]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6645810</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6645810</guid><author>bigloomy</author><pubDate>Sat, 30 Jul 2011 08:31:05 +0800</pubDate><description><![CDATA[volatile的重要性对于搞嵌入式的程序员来说是不言而喻的，对于volatile的了解程度常常被不少公司在招聘嵌入式编程人员面试的时候作为衡量一个应聘者是否合格的参考标准之一，为什么volatile如此的重要呢？这是因为嵌入式的编程人员要经常同中断、底层硬件等打交道，而这些都用]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之链表（四）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6639550</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6639550</guid><author>bigloomy</author><pubDate>Thu, 28 Jul 2011 08:29:19 +0800</pubDate><description><![CDATA[大多数的读者在学习编程语言的时候都不喜欢那些枯燥的文字描述，包括我自己在开始学习编程的时候也是这样，对于代码的热情远远高于文字，所以我在我写东西的时候也不喜欢用枯燥的文字描述来向读者讲解，更喜欢用代码加上适当的文字描述的方式进行讲解，因为有些东西可能用枯燥的文字描述半天还不如实实]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之链表（三）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6639549</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6639549</guid><author>bigloomy</author><pubDate>Thu, 28 Jul 2011 08:28:56 +0800</pubDate><description><![CDATA[在开始写linux内核双向循环链表之前，我一直在想我要不要用长篇大论的文字来描述linux内核双向循环链表呢？经过认真的思考之后，我否决了用枯燥的文字向读者描述linux内核双向循环链表的想法，因为对于编程语言来说我相信大多数的读者都应该不喜欢面对枯燥的文字，更喜欢看到代码，同时]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之字节对齐]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6633008</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6633008</guid><author>bigloomy</author><pubDate>Tue, 26 Jul 2011 09:34:21 +0800</pubDate><description><![CDATA[可能有不少读者会问，字节对齐有必要拿出来单独写一篇博客嘛？我觉得是很有必要，但是它却是被很多人所忽视的一个重点。那么我们使用字节对齐的作用和原因是什么呢？由于硬件平台之间对存储空间的处理上是有很大不同的，一些平台对某些特定类型的数据只能从某些特定地址开始存取，如通常有些架构的CP]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之链表（二）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6629479</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6629479</guid><author>bigloomy</author><pubDate>Sun, 24 Jul 2011 13:39:34 +0800</pubDate><description><![CDATA[除了个别天才程序员外，没有人一开始就能写出让人惊叹的代码，都是从模仿开始的！不要相信你身边的人说他能很轻松的自己编写出让人惊叹的代码而不用任何的参考资料，因为我相信在你我的身边没有这样的天才程序员，所以我们都选择从模仿和阅读源代码开始。就好比一个优秀的作家不是一开始就能写出好的文]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之链表（一）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6628260</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6628260</guid><author>bigloomy</author><pubDate>Sat, 23 Jul 2011 17:08:16 +0800</pubDate><description><![CDATA[链表，一个对于学习过C语言的人都是再熟悉不过的概念了，可能很多学习过链表的人都觉得链表没什么值得太在意的地方，可是如果你走进linux内核，去看看linux内核里面链表的实现方式，你不得不为之惊叹。可能有人会觉得linux内核链表实现方式仅此而已，但是你要知道，如果你没有见到这样]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之动态数组]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6615012</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6615012</guid><author>bigloomy</author><pubDate>Thu, 21 Jul 2011 16:21:28 +0800</pubDate><description><![CDATA[摘要的重要性是不言而喻的，每次发文章我都很纠结如何写出一个有特色的摘要来，能够以最为简短的文字向读者描述出我所要表达的东西。但是常常出现的问题是，摘要写得太简短了，读者看了不清楚文章究竟要讲啥；摘要写得稍微长点的话自然能够描述清楚所要表达的东西，但是却也出现了另外一个问题，就是读]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之断言]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6614491</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6614491</guid><author>bigloomy</author><pubDate>Tue, 19 Jul 2011 13:24:23 +0800</pubDate><description><![CDATA[每次写摘要我都觉得是一件很头疼的事儿，因为我知道摘要真的很重要，它几乎直接就决定了读者的数量。可能花了九六二虎之力写出来的东西，因为摘要的失败而前功尽弃，因为绝大多数的读者看文章之前都会浏览下摘要，如果他们发现摘要“不对口”，没有什么特色和吸引人的地方，那么轻则采用一目十行的方法]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之指针（四）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6612790</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6612790</guid><author>bigloomy</author><pubDate>Mon, 18 Jul 2011 09:19:08 +0800</pubDate><description><![CDATA[正如前一篇博客所说的，但凡人都是急功近利和有惰性的，都不喜欢花时间去阅读那些我们认为枯燥的文字描述，喜欢直接进入主题。但是有时候恰恰就是因为我们的这种急功近利和惰性，使得我们绕了很大一个弯，到最后还是回到了文字描述上来，所以我觉得适当的文字描述下，让读者对于文章的整体有个大概的认]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之指针（三）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6612650</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6612650</guid><author>bigloomy</author><pubDate>Sun, 17 Jul 2011 21:29:34 +0800</pubDate><description><![CDATA[但凡人都是急功近利和有惰性的，我就是个例子。不想每篇博客都写一个摘要和那些大段的文字描述，但是为了让一些新的读者朋友了解我的博客内容，我还是像前面说的那样，把第一篇关于指针的摘要搬过来，因为我写的这几篇都是关于指针的，所以没有必要每篇一个摘要，在此就偷偷懒了，如果读过我前面两篇C]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之指针（一）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6612215</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6612215</guid><author>bigloomy</author><pubDate>Sun, 17 Jul 2011 17:04:09 +0800</pubDate><description><![CDATA[懂得C语言的人都知道，C语言之所以强大，以及其自由性，绝大部分体现在其灵活的指针运用上。因此，说指针是c语言的灵魂，一点都不为过。所以从我的标题加了个（一）也可以看出指针的重要性，我尽可能的向大家交代清楚我对于指针的理解。所以在讲解的过程中我尽可能的用代码加文字的描述方式，通过代]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之const修饰符]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6595197</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6595197</guid><author>bigloomy</author><pubDate>Sat, 09 Jul 2011 22:13:20 +0800</pubDate><description><![CDATA[或许还有不少人对于const修饰符理解的并不深刻，都只是停留在一个比较浅的层面上，仅仅是在读别人代码的时候看到了const修饰符的使用，自己的写代码的过中从未使用过，所以自然对于const修饰符比较陌生。那么到底什么是const修饰符，我们在自己编写C语言代码的过程中又该如何有效]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之函数的调用关系]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6592167</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6592167</guid><author>bigloomy</author><pubDate>Fri, 08 Jul 2011 15:09:49 +0800</pubDate><description><![CDATA[显示函数的调用关系是调试器的必备功能，如果我们在程序的运行中出现了崩溃的情况，通过函数的调用关系可以快速定位问题的根源，懂得函数调用关系的实现原理也可以扩充自己的知识面，在没有调试器的情况下，我们也可以自己来实现显示函数的调用关系。在我们自己动手写backtrace函数之前，先来]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之变参函数的实现]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6588354</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6588354</guid><author>bigloomy</author><pubDate>Thu, 07 Jul 2011 14:16:36 +0800</pubDate><description><![CDATA[在学习C语言的过程中我们可能很少会去写变参函数，印象中大学老师好像也没有提及过，但我发现变参函数的实现很巧妙，所以还是特地在此分析下变参函数的实现原理。无需标准C的支持，我们自己写代码来实现。先来看看一个实现代码：#include  #define va_li]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之函数指针]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6584858</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6584858</guid><author>bigloomy</author><pubDate>Tue, 05 Jul 2011 15:10:08 +0800</pubDate><description><![CDATA[我们经常会听到这样的说法，不懂得函数指针就不是真正的C语言高手。我们不管这句话对与否，但是他都从侧面反应出了函数指针的重要性，所以我们还是有必要掌握对函数指针的使用。先来看看函数指针的定义吧。函数是由执行语句组成的指令序列或者代码，这些代码的有序集合根据其大小]]></description><category></category></item><item><title><![CDATA[C语言的那些小秘密之堆栈]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6582662</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6582662</guid><author>bigloomy</author><pubDate>Mon, 04 Jul 2011 15:37:20 +0800</pubDate><description><![CDATA[在讲解堆栈之前，我们先要来说说其实我们常说的堆栈是两种数据结构。那么什么是堆什么又是栈呢？       栈，是硬件。主要作用表现为一种数据结构，是只能在某一端插入和删除的特殊线性表。它按照后进先出的原则存储数据，先进入的数据被压入栈底，最后的数据在栈顶，需要读]]></description><category></category></item><item><title><![CDATA[GCC内嵌汇编（三）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6582025</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6582025</guid><author>bigloomy</author><pubDate>Sun, 03 Jul 2011 16:44:29 +0800</pubDate><description><![CDATA[接下来是GCC内嵌汇编最后一部分了，  可能看起来讲的先后顺序有些乱，但是个人习惯吧，前面如果有些地方不明白的，看了后面的应该就清楚了。如果还是有疑惑的话，自己组织下内容效果更佳。匹配限制符 I386 指令集中许多指令的操作数是读写型的（读写型操作数指先读取原]]></description><category></category></item><item><title><![CDATA[GCC内嵌汇编（二）]]></title><link>https://blog.youkuaiyun.com/bigloomy/article/details/6582022</link><guid>https://blog.youkuaiyun.com/bigloomy/article/details/6582022</guid><author>bigloomy</author><pubDate>Sun, 03 Jul 2011 16:37:47 +0800</pubDate><description><![CDATA[接着上章节的内容继续讲，GCC编译内嵌汇编代码的步骤如下： 1.  输入变量与占位符   根据限定符和破坏描述部分，为输入和输出部分的变量分配合适的寄存器，如果限定符指定为立即数(“i”)或内存变量(“m”)则不需要该步骤，如果限定符没有具体指定输入操作数的类]]></description><category></category></item></channel></rss>