int read_number(int* value) {
scanf("%d",&value);
printf("%d\n",value);
}
int main() {
int x=1;
read_number(x);
printf("%d",x);
return 0;
}
最佳答案
您的代码应如下所示:
int read_number(int *value) {
scanf("%d", value);
printf("%d\n", *value);
}
int main() {
int x=1;
read_number(&x);
printf("%d", x);
return 0;
}
将指针作为参数传递给函数,以便函数可以取消引用指针并分配新值。
顺便说一下,最好不要使用不安全的 scanf()
。您应该使用 fgets()
和 sscanf()
。
关于c - 我正在尝试在一个函数内执行 scanf 并将其输出到另一个函数。目前它无法正确输出。我不确定我错过了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29178706/