C語言使用cmd命令並獲取輸出方法


轉自http://blog.csdn.net/hxh129/article/details/8000205

C語言使用cmd命令並獲取輸出方法

在實踐中,我們有時候需要用C語言來調用cmd的命令,並得到執行的結果,這里給出一個簡單的例子。
 
#include <stdio.h>
 
// 描述:execmd函數執行命令,並將結果存儲到result字符串數組中 
// 參數:cmd表示要執行的命令
// result是執行的結果存儲的字符串數組
// 函數執行成功返回1,失敗返回0  
int execmd(char* cmd,char* result) {
    char buffer[128];                         //定義緩沖區                        
    FILE* pipe = _popen(cmd, "r");            //打開管道,並執行命令 
    if (!pipe)
          return 0;                      //返回0表示運行失敗 
        
    while(!feof(pipe)) {
    if(fgets(buffer, 128, pipe)){             //將管道輸出到result中 
            strcat(result,buffer);
        }
    }
    _pclose(pipe);                            //關閉管道 
    return 1;                                 //返回1表示運行成功 
}
 
int main(){
    char result[1024*4]="";                   //定義存放結果的字符串數組 
    if(1==execmd("ipconfig",result)){
        printf(result);
    }
    system("pause");                          //暫停以查看結果 
 
另外,微軟的MSDN文檔中有更多詳細的說明,有興趣的朋友可以看看:http://msdn.microsoft.com/en-us/library/96ayss4b(v=vs.80).aspx。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM