C语言中的名字传递实现

时间:2016-05-04 11:13:43

标签: c parameters pass-by-name

我知道C使用pass-by-value,我们可以在指针的帮助下模拟pass-by-reference。但是,例如,为了计算一个简单的数学表达式,我如何在C中实现传递名称(这是一种懒惰的评估,但不完全是)?

2 个答案:

答案 0 :(得分:3)

C只是按值传递。您不能通过引用或名称传递。使用预处理器,您可以执行各种黑客攻击,但不能使用C语言。

有时,人们会调用传递指针“传递引用”但事实并非如此。指针通过值传递,就像其他任何东西一样。 C ++是一个不同的故事,但你问过C。

您可能也对this article discussion this at length

感兴趣

答案 1 :(得分:0)

类似函数的预处理器宏使用的参数替换有时被描述为"按名称传递"。