示例go语言程序调用可执行程序并传参

C++程序如下:

#include <iostream>
#include "windows.h"

int main(int argc, char** argv)
{
    std::cout << "C++ exec Hello World!\n";
    std::cout << "argc:"<< argc <<"\n";
    for (auto i = 0; i < argc; ++i) {
        std::cout << "argv["<<i<<"]:" << argv[i] << "\n";
    }
    system("pause");
}

go 程序如下:

package main

import (
	"fmt"
	"os/exec"
)

func main() {
	fmt.Println("go exe caller Hello World!")
	datapath := "./exeForGo.exe ver=1.0 --help"
	cmd := exec.Command("cmd.exe", "/c", "start "+datapath)
	cmd.Run()
}

正常执行截图:

下载c++和go源码: