c语言如何 调用外部程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言如何 调用外部程序相关的知识,希望对你有一定的参考价值。

c语言如何 调用外部程序例如我现在有一个程序源码 我想在这个程序里再加上一个别人已做好的exe程序。怎么做。最好举例说明。本人小菜。大虾莫见怪哦。复制别人的东西就别回答了。没分了。55555555

fe函数名: exec...
功 能: 装入并运行其它程序的函数
用 法: int execl(char *pathname, char *arg0, arg1, ..., argn, NULL);
int execle(char *pathname, char *arg0, arg1, ..., argn, NULL,
char *envp[]);
int execlp(char *pathname, char *arg0, arg1, .., NULL);
int execple(char *pathname, char *arg0, arg1, ..., NULL,
char *envp[]);
int execv(char *pathname, char *argv[]);
int execve(char *pathname, char *argv[], char *envp[]);
int execvp(char *pathname, char *argv[]);
int execvpe(char *pathname, char *argv[], char *envp[]);
程序例: /* execv example */
#include <process.h>
#include <stdio.h>
#include <errno.h> void main(int argc, char *argv[])

int i; printf("Command line arguments:\n");
for (i=0; i<argc; i++)
printf("[%2d] : %s\n", i, argv[i]); printf("About to exec child with arg1 arg2 ...\n");
execv("CHILD.EXE", argv); perror("exec error"); exit(1);

多看书,多Google,百度,
参考技术A

调用外部程序接口

方法1.

Process p=Runtime.getRuntime.exec("cmd")(最常用)

方法2.

Process p=new ProcessBuilder(cmd).start()

但是一般方法一比较常用, 下面我们介绍下方法一中关于抽象Process类的常用函数

    //向对应程序中输入数据  

    abstract public OutputStream getOutputStream();  

    //获得对应程序的输出流(没写错)  

    abstract public InputStream getInputStream();  

    //获得程序的错误提示  

    abstract public InputStream getErrorStream();  

    //等待程序执行完成,返回0正常,返回非0失败  

    abstract public int waitFor() throws InterruptedException;  

    //获得程序退出值,0正常退出,非0则异常  

    abstract public int exitValue();  

    //销毁进程  

    abstract public void destroy();  

    其中前3个函数用的最多

以上是关于c语言如何 调用外部程序的主要内容,如果未能解决你的问题,请参考以下文章

单片机 C语言,如何调用外部自定义函数。

C语言中,怎样调用外部exe程序,等外部程序执行完之后在执行本程序的下一条语句

有关C语言的内部函数和外部函数的定义说明

C语言如何调用函数

易语言,如何在程序内部调用外部的exe文件,让外部的exe文件运行在易语言程序内。

C语言中,其他文件可否调用文件中的static函数?