C语言中的printf函数

5
在C语言中,printf函数是按值传递参数还是按引用传递参数呢?
3个回答

12

C语言中所有的东西都是按值传递。

即使看起来像是按引用传递的东西(比如指针变量,使你可以改变底层变量),实际上也是传递指针的


嗨,paxdiablo,让我们考虑在C ++中将变量参数传递给函数,它们会按值传递还是引用传递? - Umesha MS
@Umesha,我相信C++有正确的引用类型。而C语言没有。如果你正在讨论从C到C++的传递,除非依赖于语言扩展,否则仍然受限于C语言的习惯用法。C语言本身(即ISO C)不涵盖跨语言的内容。 - paxdiablo

3

C语言中没有传递引用的方式,所有传递都是按值或指针通过值传递地址。


3
没有所谓的“按地址传递”,而是“按值传递指向地址的指针”。所有的东西都是按值传递。 - Chris Lutz

0

在C语言中,不适用于按引用调用。因为在C语言中我们无法创建任何变量的别名,所以只支持按值调用或按指针机制调用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接