我深入学习C语言的三个目的

   学习和使用java有四年多了,现在却回头搞起了C,理由有三:
1、为了考试啊,我也知道高程证书含金量不怎么样,可为了督促自己再次深入学习下基础知识,考个证没坏处。

2、我想读《ruby hacking guide》,ruby是用C写的,自从看了dreamhead老大的《管窥ruby》之后,我一直有股强烈的冲动去读ruby的源码。想把冲动转成行动,不深入下C语言是不行的。有牛人将Erlang的源码都看了,尽管我觉的我这辈子还达不到那么牛,不过偶尔去探访一下神秘的代码丛林也能满足下好奇心。甚至某天去看看jvm的源码......浮云。

3、没错,我对unix/linux下的C开发充满了兴趣,对网络通讯方面也很感兴趣,况且用C语言去操纵内核实在是很有趣、很好玩的事情,在这个学习过程中也加深了对计算机底层运行原理的理解。

    终于将《c primer plus》看完,俨然发现c语言并非想象中的复杂,某种意义上还是非常简洁的,高效当然就更不用说咯。

文章转自庄周梦蝶  ,原文发布时间 2007-09-07

时间: 2024-10-12 19:13:18

我深入学习C语言的三个目的的相关文章

学习JAVA语言过程中可能遇到的共同问题

这节教程将讨论一些在学习JAVA语言过程中可能遇到的共同问题. 问题一:编译器找不到类. 解决方法: 确保你已经导入了类或者它的包. 如果对CLASSPATH环境变量有进行设置,要重新复位. 确保类名的拼写跟定义的一样,要注意大小写问题. 如果类在包中,要确保它们处在正确的子目录中. 同时,一些程序员从.java文件名字为类使用不同的名字.要确保你是使用类名字而不是文件名.实际上,使类名和文件名相同就不会出现这个错误了. 问题二:注释器不能找到其中一个类 解决方法: 确保你指定的是类名而不是类的

《鸟哥的Linux 私房菜 基础学习篇(第三版)》——1.4 重点回顾

1.4 重点回顾 鸟哥的Linux 私房菜 基础学习篇(第三版) ◆ 计算机主要以二进制作为单位,而目前常用的磁盘容量单位为B,其单位换算为1B = 8bit,其他的以1024为其倍数,如1GB=1024MB等. ◆ 操作系统(Operation System)主要用于管理与驱动硬件,因此必须要能够管理内存.管理设备.负责进程管理以及系统调用等.因此,只要能够让硬件准备妥当(Ready)的情况,就是一个很棒的操作系统了. ◆ 操作系统重点仅在驱动与管理硬件,而要使用硬件时,就得需要通过应用软件或

《鸟哥的Linux 私房菜 基础学习篇(第三版)》——0.4 软件程序运行

0.4 软件程序运行 鸟哥的Linux 私房菜 基础学习篇(第三版) 鸟哥在上课时经常会开玩笑地问:"我们知道没有插电的计算机是一堆废铁,那么插了电的计算机是什么?"答案是"一堆会电人的废铁."这是因为没有软件的运行,计算机的功能就无从发挥了.就好像没有了灵魂的躯体也不过就是行尸走肉,重点在于软件/灵魂.所以下面咱们就得要了解一下"软件"是什么. 一般来说,目前的计算机系统将软件分为两大类,一个是系统软件,一个是应用程序.但鸟哥认为我们还是得要了

《鸟哥的Linux 私房菜 基础学习篇(第三版)》——0.3 数据表示方式

0.3 数据表示方式 鸟哥的Linux 私房菜 基础学习篇(第三版) 事实上我们的计算机只认识0与1,记录的数据也是只能记录0与1而已,所以计算机常用的数据是二进制的.但是我们人类常用的数值运算是十进制,文字方面则有非常多的语言,常用的语言就有英文.中文(又分繁体与简体中文).日文等.那么计算机如何记录与显示这些数值/文字呢?就得要通过一系列的转换才可以啦!下面我们就来谈谈数值与文字的编码系统. 0.3.1 数字系统 早期的计算机使用的是利用通电与否的特性的真空管,如果通电就是1,没有通电就是0

《鸟哥的Linux 私房菜 基础学习篇(第三版)》——1.2 Torvalds的Linux开发

1.2 Torvalds的Linux开发 鸟哥的Linux 私房菜 基础学习篇(第三版) 我们前面一节当中,提到了UNIX的历史,也提到了Linux是由芬兰人Torvalds所开发的.那么为何托瓦兹可以开发Linux呢?凭空想象而来的,还是有什么渊源?这里我们就来谈一谈! 1.2.1 Minix Linus Torvalds(托瓦兹, 1969年出生)的外祖父是赫尔辛基大学的统计学家,他的外祖父为了让自己的小孙子能够学点东西,所以从小就将托瓦兹带到身边来管理一些微计算机.在这个时期,托瓦兹接触了

c语言基础-刚刚学习c语言的数组部分,不懂,求助一下!

问题描述 刚刚学习c语言的数组部分,不懂,求助一下! 输入一组整数,将它们排序后按照由小到大的顺序输出,不知道要不要用到循环语句,求助这个这个程序怎么写 解决方案 #include <stdio.h>void main() { int i, j, temp; int a[10]; for (i = 0; i < 10; i++) { scanf("%d,", &a[i]); } for (j = 0; j < 9; j++) { for (i = 0;

想学习一门语言,大家推荐学什么?

问题描述 想学习一门语言,大家推荐学什么? 想学习一门语言,大家推荐学什么?想学习一门语言,大家推荐学什么?想学习一门语言,大家推荐学什么?想学习一门语言,大家推荐学什么? 解决方案 大家不要较真,这个问题是csdn工作人员为了测试而发出的问题.一个毫无意义的问题.话说csdn也不分测试环境生产环境的,不但直接在生产环境中做测试,而且生产环境明显如同正在开发的状态那样到处是bug而且极不稳定.特别是,到现在我也没搞清楚这个编辑器奇怪的转义规则是什么.只知道它经常把文字弄得乱七八糟,代码转义也不对

求大神解答一下-如何判断自己是否适合学习php语言

问题描述 如何判断自己是否适合学习php语言 我进行html以及C语言基础学习,但是C语言循环计算的题会理不太清,求大神建议我是否适合进行学习php语言. 解决方案 问这种问题的,无非就是想听到肯定的回答呗.但是非要人家肯定你,你才愿意学的,又偏偏是坚持不了几天的.你说怎么办. 解决方案二: 感觉学得有感觉,有意思就继续学呗,很简单的道理啊. 解决方案三: 没有什么适合不适合,主要看你是否感兴趣,是否愿意下苦功夫,多钻研多实践,只要有毅力有耐心,没什么语言是学不会的. 解决方案四: 可以没事看看

linux c-小白刚开始在linux学习c语言编程。有问题不会请各位大神指导下

问题描述 小白刚开始在linux学习c语言编程.有问题不会请各位大神指导下 6行和7行中的main有什么作用 解决方案 Programme file name! if programme file name is "test", gcc -o test .... 解决方案二: i wait to reply for your question 解决方案三: 这是Makefile的编写,main.o是main.c生成的中间文件,第七行的main表示最终生成的目标文件,他依赖于objs内的