gpt4 book ai didi

pass-by-reference - 在 C99 中通过引用传递

转载 作者:行者123 更新时间:2023-12-03 16:18:42 33 4
gpt4 key购买 nike

我刚看完 this :

In C++ (and C99), we can pass by reference, which offers the same performance as a pointer-pass.



所以我尝试了这个简单的代码:
#include <stdio.h>

void blabla(int& x){
x = 5;
}

int main(){
int y = 3;
printf("y = %d\n", y);
blabla(y);
printf("y = %d\n", y);
}

输出是:
gcc test.c -o test -std=c99
test.c:3:16: error: expected ';', ',' or ')' before '&' token
test.c: In function 'main':
test.c:10:2: warning: implicit declaration of function 'blabla'

现在我很困惑。 C99 确实支持传递引用吗?

最佳答案

那个页面错了。 C 中没有“引用”(即使在 C99 中)。

在 C 中,当您想“通过引用”传递时,您可以使用指针来伪造引用语义。

关于pass-by-reference - 在 C99 中通过引用传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5359677/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com