system()和exec()的区别

在linux中,我们常会看到system()和exec()这2个函数(exec其实是一个函数族,一共有6个)。这2个函数的功能很相似,都可以用来执行进程外的命令。这里就说明点我对这2个函数的理解(这里是就C语言而言):
1、system()和exec()都可以执行进程外的命令,system是在原进程上开辟了一个新的进程,但是exec是用新进程(命令)覆盖了原有的进程。
2、system()和exec()都有能产生返回值,system的返回值并不影响原有进程,但是exec的返回值影响了原进程。

猜你喜欢

转载自my.oschina.net/u/588516/blog/1818702