Jin*_*Jin 6 c operating-system eof
例如,有一个名为"Hello.txt"的文本文件
Hello World!
然后操作系统(我使用MS-DOS)如何识别此文本文件的结尾?在'!'之后隐藏某种字符或符号 哪个表示文件结束?
如果您使用 MS-Dos,那么字符串末尾确实有可能存在特殊字符。MS-Dos 源自 Tim Paterson 的 QDos,他编写它是为了尽可能与当时占主导地位的 CP/M 兼容。8 位机器的操作系统,它仅通过计算文件使用的磁盘扇区数来跟踪文件大小。这使得文件大小始终是 128 字节的倍数。
这需要黑客来指示文本文件的真正结尾,因为它可能位于扇区的中间,所以它使用 Ctrl+Z 控制字符(字符代码 0x1A)。这需要语言运行时实现再次删除它并在遇到该字符时声明文件结束。Ctrl+Z 并没有被完全遗忘,当您在 Windows 控制台中键入它来终止输入时,它仍然有效。与 Unix 终端中的 Ctrl+D 进行比较。
它是否实际存在于文件中取决于创建该文件的程序。这也必须是 MS-Dos 程序才能附加 Ctrl+Z。这当然不是必需的。Paterson 对 CP/M 进行了改进,消除了一些限制,这得益于更多的可用地址空间(1 MB 与 64 KB),MS-Dos 跟踪实际字节数文件中的因此它总是可以可靠地指示文件的真实结尾。这可能是对您的问题最准确的答案。
顺便说一句,古代历史,明智地投资你的时间。
| 归档时间: |
|
| 查看次数: |
99 次 |
| 最近记录: |