首页 新闻 会员 周边

Qt与Linux系统指令交互

1
悬赏园豆:5 [已解决问题] 解决于 2015-12-03 08:40

在Qt中使用system("cmp -s file1 file2 ")指令比较file1和file2的内容是否相同,system("cmp -s file1 file2 ")是Linux的指令,我在Qt里怎么知道这个指令的结果呢?我需要知道system("cmp -s file1 file2 ")返回是0还是1来执行Qt中的函数!需要怎么处理,大神

hugo_something的主页 hugo_something | 初学一级 | 园豆:11
提问于:2015-12-02 14:12
< >
分享
最佳答案
0

linux就有system函数可以用,对于结果可以cmp -s file1 file2 &>sss 重定向到文件,看文件内容

system(执行shell 命令)
相关函数
        fork,execve,waitpid,popen
表头文件
        #i nclude<stdlib.h>
定义函数
        int system(const char * string);

收获园豆:5
2012 | 高人七级 |园豆:21230 | 2015-12-02 14:35

我是要使用system(“cmp -s file1 file2>ss”)把比较结果流到一个文件,然后再Qt中使用C++的fopen()打开这个文件把结果读取出来做判断?这样子做会不会很麻烦,有没有简单的做法?

hugo_something | 园豆:11 (初学一级) | 2015-12-02 14:47

@hugo_something: 支持代码读取输入也有,不过在linux下看起来有点复杂,不想windows中有直接可用的函数

http://www.microhowto.info/howto/capture_the_output_of_a_child_process_in_c.html#idp146944 捕获子进程的输出

2012 | 园豆:21230 (高人七级) | 2015-12-02 15:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册