【发布时间】:2011-04-10 01:23:11
【问题描述】:
我是 C 新手,我有一个计算一些变量的函数。但是现在让我们简化一下。我想要的是有一个“返回”多个变量的函数。尽管据我了解,您只能在 C 中返回一个变量。所以有人告诉我,您可以传递变量的地址并这样做。这就是我走了多远,我想知道我可以帮忙。我在 C90 禁止的东西等方面遇到了相当多的错误。我几乎可以肯定这是我的语法。
说这是我的主要功能:
void func(int*, int*);
int main()
{
int x, y;
func(&x, &y);
printf("Value of x is: %d\n", x);
printf("Value of y is: %d\n", y);
return 0;
}
void func(int* x, int* y)
{
x = 5;
y = 5;
}
这基本上就是我正在使用的结构。有人可以帮我看看吗?
【问题讨论】:
-
顺便说一下,我希望 x 和 y 的值打印出“5”。希望被间接理解。
-
感谢所有出色的答案,有人可以解决我对@Mehrdad 关于为传递的变量赋值的评论
标签: c function pointers memory-address