[问题] c++ system vs createprocess

楼主: OfficeGL (努力上班族)   2019-09-16 16:08:46
目前有一个执行档案, 是自己写的程式编译完成的 A.exe
在另一个用 c++ 写的程式中要呼叫 A.exe 起来动作
目前知道两种用法
一种是简单地透过 system( cmd_c_string );
呼叫起来执行
另一种方式是透过 createprocess () 做出子程序去跑
(VS2017 编译环境)
我想请问的是, 这两种做法的差异是什么呢?
目前感觉两个结果都一样
那比较推荐永哪种作法呢~
谢谢唷~~
作者: joechen1008 (:))   2019-09-16 19:43:00
作者: LPH66 (-6.2598534e+18f)   2019-09-16 20:55:00
system 是跨平台通用, 但多一层 CRT 帮你转系统呼叫CreateProcess 则是 Windows 的系统呼叫本身
作者: eye5002003 (下一夜)   2019-09-16 21:05:00
popen比system便宜,lua里面是采用popen
作者: uranusjr (←這人是超級笨蛋)   2019-09-18 12:41:00
1. 效能 2. 如果你想传东西进去接东西出来 system 无法

Links booklink

Contact Us: admin [ a t ] ucptt.com