当前位置:  技术问答>linux和unix

用system函数,如何知道该函数执行成功了?

    来源: 互联网  发布时间:2015-08-25

    本文导语:  用system函数,如何知道该函数执行成功了? | 补充一点,要用system 获得返回值, 最好在调用的main()函数中加上返回值, 比如:下面的程序名称为test.c int main() {    if ()    {       ......

用system函数,如何知道该函数执行成功了?

|
补充一点,要用system 获得返回值,
最好在调用的main()函数中加上返回值,

比如:下面的程序名称为test.c

int main()
{
   if ()
   {
      ...
      exit(-1);
    }
    else
    {
       ...
       exit(1);
     }
}

这样在system("test")时 可以取得test的返回值
int flag;
flag =system("test");
if (flag==1) printf("success!n");
else if (flag==-1) printr("fail!n");
  


|
非也,system的返回值与main的返回值是两回事。只能得到成功或失败的信息

|
如果system返回不是-1的话表明执行成功
rc = system("...");
WEXITSTATUS(rc)可以取被执行程序的返回值,该值的有效范围为0-127,就是main函数return的值或是exit的值

|

int system( const char *command );


Return Value:If command is NULL and the command interpreter is found, the function returns a nonzero value. If the command interpreter is not found, it returns 0 and sets errno to ENOENT. If command is not NULL, system returns the value that is returned by the command interpreter. It returns the value 0 only if the command interpreter returns the value 0. A return value of – 1 indicates an error, and errno is set to one of the following values:

E2BIG

Argument list (which is system-dependent) is too big.

ENOENT

Command interpreter cannot be found.

ENOEXEC

Command-interpreter file has invalid format and is not executable.

ENOMEM

Not enough memory is available to execute command; or available memory has been corrupted; or invalid block exists, indicating that process making call was not allocated properly.


|
If system return 0 , then success

|
我做的代码里面,这样写的
int rc=0;
rc=system("testname")
if(rc==0)
cout

    
 
 

您可能感兴趣的文章:

  • POSIX.1要求system忽略SIGINT和SITQUIT,阻塞SIGCHLD,求解释。UNIX环境高级编程 system函数
  • system()函数返回什么值时,该函数执行成功?返回什么值时,执行出现错误?谢谢
  • linux c入门问题,大家指教。system函数和exec函数的区别。
  • 在线等,请问system函数返回值是什么值,怎么判断system运行是否成功?
  • 1。 新建目录的函数是那个? 2。Busybox对C的system函数支持没问题?
  • 关于linux下system函数编程
  • 急问:Linux程序中,使用system函数的几个问题
  • 关于system()函数的问题
  • system()函数用法
  • 调用system(“命令”)和函数调用之间有什么不同?效率?
  • 有关system函数打开网页的
  • system函数执行失败
  • linux system函数调用问题
  • system函数返回值是5,是表示什么意思?
  • 帮忙找找system函数的实现
  • Unix下System函数实现中为何要使用shell去调用执行程序?
  • linux平台下system函数的使用问题
  • 有关system()这个函数
  • 请问如何用system函数切换到root用户
  • linux下system 函数调用不成功,怎么回事?
  • C中用system系统调用执行command,执行过程中死锁,如何处理?
  • cgi程序中用system函数执行iptables命令,在web网页中没法执行
  • system()函数返回值0,但却没有执行成功?
  • 调用system函数执行更改MAC地址异常退出,上面的设置命令直接在shell终端中或在单独的shell脚本中能正常执行
  • 【求助】system()命令执行失败,请高手帮忙解决,谢谢!
  • 关于system执行失败的问题。比较怪,内附代码!100分赠送!up有分
  • 请教:使用system(命令)或者exec(命令)启动一个进程执行命令,如何判断这个命令是否启动成功或正在运行?
  • 执行apt-get,为什么输出 Unable to determine a suitable packaging system type?
  • 请问守护进程代码里面加入system()命令行,可以执行吗?
  • 请问怎样将system()系统调用执行的结果写到一个字符数组里去?
  • 在代码中,用system函数执行 kill -s SIGUSR1 6679 时,总出错,为什么??
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 一用打印机。。system进程就占用cpu100%,大家知道是什么原因? 怎么解决?
  • 请教各位,不知道/boot/下的System.map 和vmlinuz链接文件有什么用?!
  • C程序调用system启动rsync,密码不知道怎么输入。
  • java命名空间javax.sound.midi类shortmessage的类成员方法: system_reset定义及介绍
  • System.exit(0);和System.exit(1)有什么区别?
  • java命名空间javax.swing.text.html.parser接口dtdconstants的类成员方法: system定义及介绍
  • 请问System.out.print和System.out.printIn有什么不同?
  • java命名空间javax.sound.midi类sysexmessage的类成员方法: system_exclusive定义及介绍
  • 谁有 novell 3.12 的SYSTEM_1 和 SYSTEM_2 的软盘内容吗?[分不够可增加]
  • java命名空间javax.xml.transform类outputkeys成员方法: doctype_system定义参考
  • 请问java.lang.System是一个类吧??那么System.out.print()中的out充当什么角色呢?还是类???
  • java命名空间javax.swing类jfilechooser的类成员方法: file_system_view_changed_property定义及介绍
  • 关于system()函数的问题 iis7站长之家
  • java命名空间java.lang.management类managementfactory的类成员方法: operating_system_mxbean_name定义及介绍
  • System.out.println() 和System.err.println()有什么区别?THANKS
  • java命名空间java.lang类system的类成员方法: in定义及介绍
  • 深入解析System.load 与 System.loadLibrary
  • java命名空间javax.print.attribute.standard类jobstatereason的类成员方法: aborted_by_system定义及介绍
  • catch异常的时候用System.out.print()和用System.err.print()来输出有什么区别啊?
  • java命名空间java.lang类system的类成员方法: gc定义及介绍
  • system(command) 与 command 的区别
  • java命名空间java.lang类system的类成员方法: console定义及介绍
  • 请问,system.map有用吗?
  • java命名空间java.lang类system的类成员方法: runfinalization定义及介绍
  • 高分请问:用了System.setOut()后怎样才能恢复到默认输出状态?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3