Like this我有一个跨平台的代码需要启动一个单独的进程,我使用system()调用以方便使用,因为它是跨平台的,但在Windows中我可以找不到从系统()调用到终端窗口停止stdout的方法。
这非常烦人,因为系统调用启动的.exe有很多无意义的输出,无法通过选项进行静音。
以下是代码:
std::system("wgrib2 C:/Inputs/HRES_ENS_2014032500+000.grib2 -lola -8.0:140:0.1 48.0:140:0.1 C:/Inputs/HRES_ENS_2014032500+000.bin bin -for 2:2:1");
如果它有任何区别,我使用minGW作为编译器。