我该怎么解决?我想要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/