奇闻轶事

来源:互联网 发布:mac双系统os不能启动 编辑:程序博客网 时间:2024/05/16 19:06

为什么UNIX系统时间从1970年1月1日开始?
答:因为它诞生于那一天
为什么C的编译器中对代码的检查如此的少?
答:编译器的金科玉律:效率,运行效率(所编写代码的运行速度)和编译效率(产生可执行代码的速度),所以lint程序一开始从编译器中分离了,pc-lint很重要
为什么数组下标是从0开始的?
答:因为C最开始的客户是编写编译器的人,偏移量的概念根深蒂固于这些人的设计理念中,也正是因为这样,C的基本数据类型都和底层硬件直接对应
K&R C 与 ANSI C 即ISO C,有区别吗?
答:有一部分区别,比如函数原型…
a.out是什么?
答:assembler output,最开始汇编程序输出的缩写,但是现在的a.out实际上已经不是汇编程序输出,而是链接器输出,所以这个名字最终解释就是UNIX“没什么理由,但我们就是这样做的”思维的一例
UNIX的超级块(Superblock,UNIX文件系统中的基础数据结构),为什么用后面神奇数字标识的? #define FS_MAGIC 0x011954
答:事实上,该数字是Kirk McKusick(实现Berkeley fast文件系统)的生日

Reference

C专家编程

0 0
原创粉丝点击