我知道C使用pass-by-value,我们可以在指针的帮助下模拟pass-by-reference。但是,例如,为了计算一个简单的数学表达式,我如何在C中实现传递名称(这是一种懒惰的评估,但不完全是)?
答案 0 :(得分:3)
C只是按值传递。您不能通过引用或名称传递。使用预处理器,您可以执行各种黑客攻击,但不能使用C语言。
有时,人们会调用传递指针“传递引用”但事实并非如此。指针通过值传递,就像其他任何东西一样。 C ++是一个不同的故事,但你问过C。
感兴趣答案 1 :(得分:0)
类似函数的预处理器宏使用的参数替换有时被描述为"按名称传递"。