C 中的指针传递与引用传递 在 C 中,通过指针传递函数参数引发了反对通过引用传递的争论。虽然这两种方法实现相似的目标,但它们具有不同的优点和缺点。 通过指针传递 调用者必须手动检索变量的地址,使其不太透明. 空值 (0) 表示不存在,启用可选参数 通过引用传递 调用者直接传递对象,提供更大的透明度。 不存在空值会消除被调用函数需要执行有效性检查。 引用接受临时值,促进像 f(T(a, b, c)) 这样的函数调用。 与指针相比,引用由于其简化的语法而减少了错误的可能性。 当传递时-reference 提供了更透明和用户友好的方法,传递指针可以促进可选参数的实现并通过空值表示不存在。最终,这些技术之间的选择取决于应用程序的具体要求。