x****t 发帖数: 389 | 1 这么写的
string dddd = "./script"
int AAA = system (dddd.c_str())
if(AAA!=0) {exit(-1);}
如果这个"./script"成功运行完,AAA就应该是0。但是运行过程中发现有时候"./
script"根本没有执行,直接就AAA!=0报错了。。。是不是这么写非常不稳定啊?
这个"./script"主要做一些cp, mkdir, sed等等工作。请问有没有更好的办法,让C++
程序调用script或者直接做这些工作?
谢谢指教! | X****r 发帖数: 3557 | 2 system是简便的方法,你也可以用exec系列函数(多半还需要fork)。
system是POSIX标准例程,没有什么不稳定的,如果你的script没被执行多半是
你自己哪里搞错了,比如sh没有找到,script的路径不对,等等。
【在 x****t 的大作中提到】 : 这么写的 : string dddd = "./script" : int AAA = system (dddd.c_str()) : if(AAA!=0) {exit(-1);} : 如果这个"./script"成功运行完,AAA就应该是0。但是运行过程中发现有时候"./ : script"根本没有执行,直接就AAA!=0报错了。。。是不是这么写非常不稳定啊? : 这个"./script"主要做一些cp, mkdir, sed等等工作。请问有没有更好的办法,让C++ : 程序调用script或者直接做这些工作? : 谢谢指教!
|
|