【发布时间】:2011-10-15 06:29:04
【问题描述】:
popen 缓冲输出而系统没有。这是唯一的区别吗?
我知道 popen 和 system 都通过 shell 运行命令。但是,popen() 是 evil 还是 system()?
【问题讨论】:
-
任何通过 shell 命令运行外部程序的东西都可能是邪恶的。但像往常一样,邪恶掌握在持有者的手中。
-
当心! cplusplus.com 以许多错误而闻名。链接页面中的解释是cr@p的负载
-
system如此邪恶的解释中最幽默的一点是,您运行的程序可能感染了恶意软件,而另一方面,一些无用的反恶意软件可能会显示警告,因为运行任何其他程序是危险的。 :-) 如果恶意软件进入您使用system调用的另一个程序,那么您将遇到与system无关的完全不同的问题,并且如果您的防病毒程序抱怨启动任何其他程序,那么诸如编程之类的任务将不会很有趣。 -
@Ian 好吧,文档,现在我也看到了论坛。这篇文章写得很好,但是错了。
-
“邪恶”只是夸张。可悲的是,人们读到这种夸张的说法,并认为它的意思是“将召唤上古之神并导致恐惧克苏鲁从他在拉莱耶的冰冻坟墓中苏醒的持续存在的邪恶”,而它真正的意思是“最好小心并知道你在做什么。”