前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基础知识 | 每日一练(161)

基础知识 | 每日一练(161)

作者头像
小林C语言
发布2019-10-31 21:17:34
2170
发布2019-10-31 21:17:34
举报

基础知识练习

读者:怎样调用另一个程序或命令, 同时收集它的输出?

小林:Unix 和其它一些系统提供了 popen() 函数, 它在联通运行命令的进程管道设置了 stdio 流, 所以输出可以被读取 (或提供输入)。记住, 结束使用后, 要调用函数pclose()。如果你不能使用 popen(), 你应该可以调用 system(), 并输出到一个你可以打开读取的文件。如果你使用 Unix, 觉得 popen() 不够用, 你可以学习用 pipe(), dup(), fork()和 exec()。顺便提一下, freopen() 可能并不工作。

读者:怎样才能发现程序自己的执行文件的全路径?

小林:arg[0] 也许含有全部或部分路径, 或者什么也没有。如果 arg[0] 中的路径不全,你也许可以重复命令语言注释器的路径搜索逻辑。但是, 没有保证的解决方法。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 C语言入门到精通 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档