【发布时间】:2013-10-16 20:50:16
【问题描述】:
有没有办法将(显然是字节)文件通过管道传输到 Linux 上的 C++ 应用程序。但是,我不想只使用getline(),而是只想读取每个字节一次。例如,我不想使用getline(),因为它会读取直到'\n'的所有字节,然后我还必须重新读取通过getline()给我的字节,所以字节是读了两遍。我只想“迭代”每个字节一次。
什么是性能最好的技术,一次读取 PAGE_SIZE 个字节?欢迎提供任何示例代码!
【问题讨论】:
-
我不明白字节在哪里被读取了两次......
-
@OliCharlesworth 当您调用 getLine() 时,字节将被遍历一次(否则它如何知道 '\n' 在哪里),然后我将再次遍历字节应用我的应用程序逻辑。
-
@H2CO3 fgetc() 与下面的 read() 建议相比如何?
-
@user997112 几乎完全相同。