c - 定义 EOF 字符

标签 c posix

出于好奇,是否可以临时添加一个应该被解释为 EOF 的字符?例如,在循环中使用 read() 系统调用,并通过将新行字符临时注册为 EOF 使其在 '\n' 上中止。

最佳答案

不,不可能。如果您想从文件描述符读取直到遇到特定字符,并避免读取超过它的任何内容(例如,为了不消耗另一个进程稍后需要的输入),唯一的解决方案是执行 1 字节读取。它很慢,但就是这样。

关于c - 定义 EOF 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9827367/

相关文章:

c++ - 代码:: block 和 MPI

ios - 如何从 Objective-C 调用 C 函数

c - C中的父线程通知子线程

c++ - 在许多不同的平台上使用 c/c++ 中的线程

c - POSIX:您如何确定您自己的进程的文件镜像以便您可以执行自己?

networking - 断开并重新连接已连接的数据报套接字

c - 为什么二进制文件不是文本文件,所有文本文件都是二进制文件?

c - Openssl hmac 生成不同的结果

c - 即使源代码和编译器标志未修改,是什么导致目标文件在编译之间有所不同?

c++ - fallocate 与 posix_fallocate