• 从Hello World说程序运行机制

    2017-03-27
    从Hello World说程序运行机制
    开篇 学习任何一门编程语言,都会从 Hello World 开始。对于一门从未接触过的语言,在短时间内我们都能用这种语言写出它的hello world。然而,对于hello world 这个简单程序的内部运行机制...
  • 如何用C语言画一个“圣诞树”?

    2016-12-25
    我使用了左右镜像的Sierpinski triangle,每层减去上方一小块,再用符号点缀。可生成不同层数的「圣诞树」,如下图是5层的结果。 lt;img src="https://pic3.zhimg.com/b92e467997b0f799cfb7f085dc06833a_b...
  • C语言核心之数组和指针详解

    2016-12-17
    指针 相信大家对下面的代码不陌生: int i= 2 ; int *p; p=i; 这是最简单的指针应用,也是最基本的用法。再来熟悉一下什么是指针:首先指针是一个变量,它保存的并不是平常的数据,而...
  • 动态修改C语言函数的实现

    2016-07-29
    动态修改C语言函数的实现
    Objective-C 作为基于 Runtime 的语言,它有非常强大的动态特性,可以在运行期间自省、进行方法调剂、为类增加属性、修改消息转发链路,在代码运行期间通过 Runtime 几乎可以修改 Objec...
  • 函数式编程的优与劣

    2016-07-23
    函数式编程的优与劣
    如今函数式编程越来越流行。越来越多的编程语言支持函数式 编程风格 ,人们学习如何使用它们。函数式编程已不像以前那么小众现在Ruby,Java和JavaScript都使用了函数式编程思想。 这...
  • C语言产生随机数的方法

    2016-07-10
    在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系...
  • 以生活例子说明单线程与多线程

    2016-05-13
    以生活例子说明单线程与多线程
    1. 程序设计的目标 在我看来单从程序的角度来看,一个好的程序的目标应该是性能与用户体验的平衡。当然一个程序是否能够满足用户的需求暂且不谈,这是业务层面的问题,我们仅仅...
  • 最全面的C/C++编码规范总结

    2016-01-28
    最全面的C/C++编码规范总结
    对于不同的编程语言来说,具体的编码规范可以有很大的不同,但是其宗旨都是一致的,就是保证代码在高质量完成需求的同时具备良好的可读性、可维护性。例如我们可以规定某个项...
  • 如何写出优美的C代码

    2016-01-12
    如何写出优美的C代码
    面向对象的语言更接近人的思维方式,而且在很大程度上降低了代码的复杂性,同时提高了代码的可读性和可维护性,传统的 C 代码同样可以设计出比较易读,易维护,复杂度较低的优...
  • 面向指针编程的那些事

    2015-12-31
    面向指针编程的那些事
    面向对象编程,面向 设计模式 编程(亦即设计模式),面向接口编程,面向模板编程(亦即泛型编程),面向函数编程(亦即函数式编程),面向多核时代的并行编程,面向大数据的...
  • 第一个C语言编译器是怎样编写的?

    2015-12-01
    第一个C语言编译器是怎样编写的?
    首先向C语言之父 Dennis Ritchie 致敬! 当今几乎所有的实用的编译器/解释器(以下统称编译器)都是用C语言编写的,有一些语言比如 Clojure, Jython 等是基于 JVM 或者说是用 Java 实现的,...
  • C程序运行时内存结构分析

    2015-11-24
    C程序运行时内存结构分析
    实验知识 静态变量存储在静态存储区,局部变量存储在动态存储区(栈),代码存放在代码区 寄存器,EBP指向栈底,ESP指向栈顶,EIP指向正在执行指令的下一条指令,三个寄存器中保...
  • C程序运行的背后

    2015-11-24
    C程序运行的背后
    一个成功的男人背后,至少有一个伟大的女人;一个不成功的男人,至少有一双手。 而一个C程序,无论成功不成功,它的背后一定有一个操作系统,一个shell,一套工具链。 世界本就...
  • C语言中的指针和内存泄漏

    2015-11-24
    引言 对于任何使用 C 语言的人,如果问他们 C 语言的最大烦恼是什么,其中许多人可能会回答说是 指针和内存泄漏 。这些的确是消耗了开发人员大多数调试时间的事项。指针和内存泄...
  • 最值得关注的10个C语言开源项目

    2015-11-21
    1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试...
  • 编译器的工作过程和原理

    2015-11-21
    编译器的工作过程和原理
    代码要运行,必须先转成二进制的机器码。这是编译器的任务。 比如,下面这段源码(假定文件名叫做test.c)。 #include stdio.hint main(void){ fputs(Hello, world!\n, stdout); return 0;} 要先用编译器...
  • 为什么要学习和使用C语言?

    2015-10-17
    为什么要学习和使用C语言?
    一、前言 对于理工 科学生来说,这个答案可能很简单,因为这是一门必修课。而对于程序员来说选择一门编程语言,在某种程度上,对职业生涯的发展会产生重大的影响,所以必须慎...
  • 为什么C语言屹立不倒?

    2015-10-11
    为什么C语言屹立不倒?
    近年来,谷歌一直致力于开发出自己的编程语言以取代当今世上最常用的C、C++和JavaScript。在系统语言方向,谷歌的Go语言能够为用户 在数据中心内建立大型软件提供更多的便捷,有望...
  • 对C语言程序进行调试的基本方法

    2015-10-11
    对C语言程序进行调试的基本方法
    调试程序的方法与医生看病的道理类似:先问清基本情况,再进行大致的检查,然后分析检查的结果、确定范围,再进行专项检查,再分析检查结果,如此反复,最后确定问题所在并进...
  • 从零开始简单快乐学编程(19)--判断(下)

    2015-09-25
    敬请期待...
  • 从零开始简单快乐学编程(18)--判断(中)

    2015-09-24
    然后第2种格式 if(){}else{} 如果怎样不然就怎样 直接看下面就懂了 if(age18) { printf(你没成年啊); printf(回家吃奶去吧); } else { printf(好吧,你成年了,可以去啪啪啪了); } 如果年龄小于18就打...
  • 从零开始简单快乐学编程(17)--判断(上)

    2015-09-23
    今天我们要接触的是第一个重点,就是编程的逻辑。 什么是逻辑?这个大家都知道,就是一件事情的因果规律 因为怎么样,然后怎么样。。如果怎么样。后来怎么样 等 这就是逻辑 编...
  • 从零开始简单快乐学编程(16)--数学运算

    2015-09-21
    C语言有很多运算符,+(加) -(减) *(乘) / (除) =(等于)只是其中的5个,但也是最常用的5个,这个我们都知道哈,只有等号=跟数学里的不一样,这个我们之前就讲过了 数学里...
  • 从零开始简单快乐学编程(15)--注释

    2015-09-17
    从零开始简单快乐学编程(15)--注释
    现在说说注释(注明与解释),这个很简单。就是一段解释说明,写给自己或者别人看的(比如程序由一个团队来写,写上注释就方便大家读懂自己写的代码) 注释并不是必须写,但有...
  • 从零开始简单快乐学编程(14)--变量输入

    2015-09-05
    从零开始简单快乐学编程(14)--变量输入
    现在说说注释,这个很简单。就是一断解释说明,写给自己或者别人看的(比如程序由一个团队来写) 注释并不是必须写,但有写的必要 注释怎么用?注意:我们加注释不是给电脑看的...