当前位置:网站首页 > 技术博客 > 正文

c语言中push函数pop函数



1. popen()函数

头文件:#include <stdio.h>

函数原型:FILE * popen(const char * command, const char * type);

关闭文件流:int pclose(FILE * stream);

  函数popen 先执行fork,然后调用exec以执行cmd,并且返回一个标准I/O文件指针。

  cmd是一个包含shell命令的字符串指针(以NULL结束字符结尾);
  如果type是"r",则文件指针连接到cmd的标准输出;
  如果type是"w",则文件指针连接到cmd的标准输入。

2. 描述

  popen() 函数用创建管道的方式启动一个进程, 并调用 shell. 因为管道是被定义成单向的, 所以type参数只能定义成只读或者只写, 不能是两者同时, 结果流也相应的是只读或者只写.

  command 参数是一个字符串指针, 指向的是 一个以 null 结束符结尾的字符串, 这个字符串包含一个 shell 命令. 这个命令被送到 /bin/sh-c 参数执行, 即由 shell 来执行. type 参数也是一个 指向以 null 结束符结尾的字符串的指针, 这个字符串必须是 'r' 或者 'w’ 来指明是读还是写.

  popen() 函数的返回值是一个普通的标准I/O流, 它只能用 pclose() 函数来关闭, 而不是 fclose() 函数.

  注意, popen 函数的输出流默认是被全缓冲的;pclose 函数等待相关的进程结束并返回一个 command 命令的退出状态, 就像 wait4 函数 一样

3. 示例

版权声明


相关文章:

  • ftp下载文件命令2025-05-02 09:01:06
  • java课程设计案例精编2025-05-02 09:01:06
  • pytorch版本2025-05-02 09:01:06
  • 依赖包括什么2025-05-02 09:01:06
  • 手机拖动滑块获取验证码没有反应2025-05-02 09:01:06
  • 深度优先遍历经典例题2025-05-02 09:01:06
  • office离线版2025-05-02 09:01:06
  • 二叉树后序遍历怎么看2025-05-02 09:01:06
  • java构造器和构造函数2025-05-02 09:01:06
  • 2019坏账准备例题2025-05-02 09:01:06