社区
C语言
帖子详情
如何调用可执行文件?
mostneed
2002-08-02 10:49:02
如题,用Ansi C怎么做?谢谢
...全文
81
12
打赏
收藏
如何调用可执行文件?
如题,用Ansi C怎么做?谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
step_by_step
2002-08-02
打赏
举报
回复
在windows下可以用ShellExecute();
在dos下面可以用system();
在unix下面可以用system();
y_zhi_yong
2002-08-02
打赏
举报
回复
vc下有个WinExec函数的。查查看吧。
huang_yi_cn
2002-08-02
打赏
举报
回复
在vc下好想有个什么shell函数
huang_yi_cn
2002-08-02
打赏
举报
回复
exec是tc下的.
LeeMaRS
2002-08-02
打赏
举报
回复
有一个exec系列函数,不过不是ANSI C的
system函数倒是ANSI C的,就是执行DOS命令的函数.用它也可以的.
guoming1
2002-08-02
打赏
举报
回复
up
liushmh
2002-08-02
打赏
举报
回复
参数就是要执行的文件的名称
liushmh
2002-08-02
打赏
举报
回复
好像有個execute()函數
dcyu
2002-08-02
打赏
举报
回复
可以用Exec和Spawn函数族:不知道是不是Ansi C下的,反正tc下是可以用的。int execl( char *pathname,char *arg0,char *arg1,…,char *argn,NULL)
int execle( char *pathname,char *arg0,char *arg1,…,
char *argn,NULL,char *envp[])
int execlp( char *pathname,char *arg0,char *arg1,…,NULL)
int execlpe(char *pathname,char *arg0,char *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[])
exec函数族装入并运行程序pathname,并将参数
arg0(arg1,arg2,argv[],envp[])传递给子程序,出错返回-1
在exec函数族中,后缀l、v、p、e添加到exec后,
所指定的函数将具有某种操作能力
有后缀 p时,函数可以利用DOS的PATH变量查找子程序文件。
l时,函数中被传递的参数个数固定。
v时,函数中被传递的参数个数不固定。
e时,函数传递指定参数envp,允许改变子进程的环境,
无后缀e时,子进程使用当前程序的环境。
int spawn…运行子程序
int spawnl( int mode,char *pathname,char *arg0,char *arg1,…,
char *argn,NULL)
int spawnle( int mode,char *pathname,char *arg0,char *arg1,…,
char *argn,NULL,char *envp[])
int spawnlp( int mode,char *pathname,char *arg0,char *arg1,…,
char *argn,NULL)
int spawnlpe(int mode,char *pathname,char *arg0,char *arg1,…,
char *argn,NULL,char *envp[])
int spawnv( int mode,char *pathname,char *argv[])
int spawnve( int mode,char *pathname,char *argv[],char *envp[])
int spawnvp( int mode,char *pathname,char *argv[])
int spawnvpe(int mode,char *pathname,char *argv[],char *envp[])
spawn函数族在mode模式下运行子程序pathname,并将参数
arg0(arg1,arg2,argv[],envp[])传递给子程序.出错返回-1
mode为运行模式
mode为 P_WAIT 表示在子程序运行完后返回本程序
P_NOWAIT 表示在子程序运行时同时运行本程序(不可用)
P_OVERLAY表示在本程序退出后运行子程序
在spawn函数族中,后缀l、v、p、e添加到spawn后,
所指定的函数将具有某种操作能力
有后缀 p时, 函数利用DOS的PATH查找子程序文件
l时, 函数传递的参数个数固定.
v时, 函数传递的参数个数不固定.
e时, 指定参数envp可以传递给子程序,允许改变子程序运行环境.
当无后缀e时,子程序使用本程序的环境.
jamesfangjing
2002-08-02
打赏
举报
回复
#include <dos.h>
......
system("....."); /* ()内为可执行文件的路径名 */
......
ddszhan
2002-08-02
打赏
举报
回复
#include <dos.h>
......
system("....."); /* ()内为可执行文件的路径名 */
......
me_on_line
2002-08-02
打赏
举报
回复
在windows下可以用CreateProcess() 或 ShellExecute();
在RTOS 下面可以用TaskSpawn()
Call 和 Return 使用
关于 Call 和 Return 使用方法的汇编源代码
简单的扑克牌游戏程序
一个简单的扑克牌游戏程序.
汇编语言接口程序实现打印图形的程序
个在Fox中利用汇编语言接口程序实现打印图形的程序
获得CPU序列号和CPU厂商名
如何获得CPU序列号和CPU厂商名
最全的C和C++语言笔试面试题汇总
最全的C和C++语言笔试面试题汇总,我大四时候找工作时候他帮上了很多忙,里面的题目经常考到。希望对大家有帮助。
C语言
70,035
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章