摘要: 代码清单9-1表示的是,在Windows操作系统下,用C语言制作一个具有表示当前时间时间功能的应用。time()是用来取得当前日期和时间的函数,print()是用来在显示器上显示字符串的函数。程序的运行结果如图9-4所示。 运行代码清单9-1的应用时,硬件的受控过程如下所示。 (1)通过time_t 阅读全文
posted @ 2023-02-13 20:30 原魏薯片 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 在计算机尚不存在操作系统的年代,完全没有任何程序,因此程序员就需要编写出处理相关的所有程序。用机器语言编写程序,然后再使用开关将程序输入,这一过程非常麻烦。于是,有人开发出了仅具有加载和运行功能的监控程序,这就是操作系统的原型。通过事先启动监控程序,程序员就可以根据需要将各种程序加载到内存中运行。虽 阅读全文
posted @ 2023-02-13 19:59 原魏薯片 阅读(16) 评论(0) 推荐(0) 编辑
摘要: Q:编译器和解释器有什么不同? A:编译器是在运行前对所有源代码进行解释处理的。而解释器则是在运行时对源代码的内容一行一行地进行解释处理的。 Q:“分割编译”指的是什么? A:将整个程序分为多个源代码来编写,然后分别进行编译,最后链接成一个 EXE 文件。这样每个源代码都相对变短,便于程序管理。Q 阅读全文
posted @ 2023-02-13 18:49 原魏薯片 阅读(10) 评论(0) 推荐(0) 编辑
摘要: EXE 文件的内容分为再配置信息、变量组和函数组,这一点想必大家都清楚了吧。不过,当程序加载到内存后,除此之外还会额外生成两个组,那就是栈和堆。栈是用来存储函数内部临时使用的变量(局部变量“),以及函数调用时所用的参数的内存区域。堆是用来存储程序运行时的任意数据及对象的内存领域(图 8-10)。 E 阅读全文
posted @ 2023-02-13 18:38 原魏薯片 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 在程序运行时,虚拟的内存地址会转换成实际的内存地址。链接器会在 EXE 文件的开头,追加转换内存地址所需的必要信息。这个信息称为再配置信息。 EXE 文件的再配置信息,就成为了变量和函数的相对地址。相对地址表示的是相对于基点地址的偏移量,也就是相对距离。实现相对地址,也是需要花费一番心思的。在源代码 阅读全文
posted @ 2023-02-13 18:11 原魏薯片 阅读(18) 评论(0) 推荐(0) 编辑
摘要: Windows 以函数的形式为应用提供了各种功能。这些形式的函数称为API(Application Programming Interface,应用程序接口)。 Windows 中,API的目标文件,并不是存储在通常的库文件中,而是存储在名为 DLL(Dynamic Link Library)文件的 阅读全文
posted @ 2023-02-13 16:31 原魏薯片 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 链接选项“-Tpe-c-x-aa”是指定生成 Windows 用的 EXE 文件的选项。在这些选项之后,会指定结合的目标文件。而该命令行中就指定了c0w32.obj、Samplel.obj 这两个目标文件,这点相信大家都能看得出来。Samplel.obj是Samplel.c 编译后得到的目标文件。c 阅读全文
posted @ 2023-02-13 16:21 原魏薯片 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 编译器转换源代码后,就会生成本地文件。不过,本地文件是无法直接运行的。为了得到可以运行的 EXE 文件,编译之后还需要进行“链接”处理。 Borland C++的编译器是 bcc32.exe 这个命令行工具。在 Windows的命令提示符"中,运行下列命令后,由C语言编写的源文件 Smaplel.c 阅读全文
posted @ 2023-02-13 15:52 原魏薯片 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 能够把C语言等高级编程语言编写的源代码转换成本地代码的程序称为编译器。每个编写源代码的编程语言都需要其专用的编译器。将C语言编写的源代码转换成本地代码的编译器称为C编译器。 编译器首先读入代码的内容,然后再把源代码转换成本地代码。编译器中就好像有一个源代码同本地代码的对应表。但实际上,仅仅靠对应表是 阅读全文
posted @ 2023-02-13 15:35 原魏薯片 阅读(20) 评论(0) 推荐(0) 编辑
摘要: Windows中EXE文件的程序内容,使用的就是本地代码。 用记事本打开有代码清单8-1的内容转换成本地代码得到的EXE文件(Samplel.exe),页面显示情况如图8-3所示。据此我们应该可以看出,本地代码内容是人类无法理解的。也正是因为如此,才有了用人类容易理解的C语言等编程语言来编写源代码, 阅读全文
posted @ 2023-02-13 15:23 原魏薯片 阅读(12) 评论(0) 推荐(0) 编辑