gpt4 book ai didi

c - 如何使用 C 系统调用和管道处理文件 I/O?

转载 作者:行者123 更新时间:2023-11-30 18:45:28 25 4
gpt4 key购买 nike

首先,对任何草率的代码提前表示歉意 - 我对 C 还比较陌生。我目前正在为我的介绍性操作系统类(class)编写一些代码,但周末花了太多时间尝试当我用蛮力解决这个问题时,我想是时候放下我的骄傲并尝试在正确的方向上插入了。它处理压缩基本文本文件,旨在利用 Unix 系统调用和管道。在 fork() 调用之后,一个进程应该处理读取文本文件(指定为命令行参数),然后通过管道将数据发送到另一个进程,后者处理压缩和写入目标文件。测试了该程序的非管道版本后,我相当确定压缩内容按预期工作,但我认为我的问题在于管道数据共享。根据一些业余调试,我认为没有任何内容通过。

程序也会因以下行而提前终止:

段错误(核心转储)

这是代码本身:

(redacted)

有人能找出问题所在吗?我将非常感激。

最佳答案

在 fork 之前创建管道。事实上,您正在每个进程中创建一个单独的管道。

关于c - 如何使用 C 系统调用和管道处理文件 I/O?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54732267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com