gpt4 book ai didi

c - 在 C 中通过引用传递不同于 C++?

转载 作者:太空宇宙 更新时间:2023-11-04 06:36:09 25 4
gpt4 key购买 nike

当我尝试运行它时,我才得到这个错误:在“&”标记之前需要“;”、“,”或“)”

它在提示这条线

int read_values(double &sum) {

所以我想通过sum,然后直接编辑。你如何在 C 中做到这一点?谢谢大家。

#include <stdio.h>

/*
Read a set of values from the user.
Store the sum in the sum variable and return the number of values read.
*/
int read_values(double &sum) {
int values=0,input=0; double sum2=0;
sum2 = sum;
printf("Enter input values (enter 0 to finish):\n");
scanf("%d",&input);
printf("%d\n", input);
while(input != 0) {
values++;
sum2 += input;

scanf("%d",&input);
}

return values;
}

int main() {
double sum=0;
int values;
values = read_values(sum);
printf("Average: %g\n",sum/values);
return 0;
}

最佳答案

C 不做引用,只做原始指针。

main() {
...
values = read_values(&sum);
...
}


int read_values(double* sum)
{
...
sum2 = *sum;
...

}

关于c - 在 C 中通过引用传递不同于 C++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14822512/

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