随笔-15  评论-10  文章-1  trackbacks-0

例子1 - 调用外部命令,然后检查外部命令的返回值

#include <stdlib.h>
#include <stdio.h>
#include <sys/wait.h>

int main(int argc, char **argv)
{
    int error = system("ps -ef");
    printf("Outer program return value: %d\n", WEXITSTATUS(error));

    return 0;
}

调用外部程序例子2

例子2 - 调用外部命令,并获得外部命令屏幕输出内容

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

char buffer[4096];

int main(int argc, char** argv)
{
        FILE *fp;
        int status;
        char *cmd = "ps";

        fp = popen(cmd, "r");

        if (fp == NULL)
                return -1;

        memset(buffer, 0, sizeof(buffer));

        /*逐行再打印出来*/
        while (fgets(buffer, sizeof(buffer), fp) != NULL) {
                printf("%s\n", buffer);
        }

        pclose(fp);
        return 0;
}



posted on 2008-04-22 17:57 hzb 阅读(1053) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理