C main() 的 exit() 和 return
原文中文,约1300字,阅读约需4分钟。发表于: 。这里讨论一个犀利而无用的细节问题。事情的缘起是有人在 GitHub 上提了一个 pull request 要求把许多程序的 main() 的终结部分从 exit(X) 改为 return X;,我反对了这一变动。 值得注意的是,在实践上,从 main 中 return 和调用 exit(3) 几乎等效的(此处还是有细微差别, 后面将会讨论),原因是 C...
本文讨论了C程序中使用return和exit函数的差异,尤其是在内存泄漏追溯方面的细微差别。在实践中它们几乎是等效的,但如果在main函数中在堆上分配了内存而没有释放,这些内存可能被视为泄漏。然而,如果程序的main函数没有在堆上分配内存,那么这两种写法的区别可以忽略。在编写新程序时,可以根据具体需求选择使用return或exit函数。同时,文章提到了陈皓老师因突发心梗辞世的消息。