gpt4 book ai didi

c - 这件事给我错误。 C语言

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

我该如何解决这个问题?我想 scanf() 一个 d 的值,我该怎么做?我需要一些帮助。感谢。

#include <stdio.h>
#include <stdlib.h>

void LerDeputados(int d) {
printf("Indique o número de deputados a repartir: ");
scanf("%d",&d);
}
int main(void) {
int d;
LerDeputados(d);
printf("%d",d);

return 0;
}

最佳答案

这里的问题是,当您将变量 d 传递给您的 LerDeputados 函数时,它是按传递的,这意味着它是复制。该值在函数内部被正确更改,但它只是更改了副本,更改副本当然不会更改原始值。

您在这里需要做的是通过引用 传递变量。不幸的是 C 没有那个,但它可以通过使用指针来模拟。换句话说,您需要将指向变量 d 的指针传递给您的 LerDeputados 函数。

喜欢

void LerDeputados(int *d) { ... }

然后用地址运算符调用它:

LerDeputados(&d);

关于c - 这件事给我错误。 C语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33465027/

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