牛骨文教育服务平台(让学习变的简单)
博文笔记

C++ 操作cmd并返回结果

创建时间:2016-05-24 投稿人: 浏览次数:110
#include <iostream>
using namespace std ;
// 描述: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");                          //暂停以查看结果 
} 

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。