fd = popen(command, "r")怎么获取fd长度啊

小新8111 2011-08-15 02:19:16
FILE *fd;
fd = popen(command, "r") //command 只一个命令
如何获取fd的长度啊?
我用的fseek(fd, 0, SEEK_END);
m = ftell(fd);
结果不管什么情况都返回m=-1
...全文
211 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
小新8111 2011-08-16
  • 打赏
  • 举报
回复
http://blog.csdn.net/gwl48/article/details/6459544
小新8111 2011-08-16
  • 打赏
  • 举报
回复
这样子的啊,呵呵。谢谢两位了
justkk 2011-08-15
  • 打赏
  • 举报
回复
管道是不支持设置偏移的,只能顺序访问

为什么要获取长度呢?
直接读就行了,循环读,知道返回0为止
无知者无谓 2011-08-15
  • 打赏
  • 举报
回复
popen打开一个“管道”,在对方close之前是不可能知道对方还有多少东西没写的,就是说它根本没有SEEK_END。

4,465

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧