gpt4 book ai didi

c - 当 &variableName 是函数的参数时,它会做什么?

转载 作者:行者123 更新时间:2023-11-30 21:21:36 25 4
gpt4 key购买 nike

好吧,我已经得到了一些调用函数的“简单”C 代码,并且需要构建将温度从 F 转换为 C,然后将 C 转换为 F 的函数。但是我不太确定如何处理传递给函数的所有不同变量。

这是现有的代码:

int main() 
{
int degrees1 = 50, degrees2;
char scale1 = 'F', scale2;
convert_weight(degrees1, scale1, &degrees2, &scale2);
printf("%d %c = %d %c\n");
degrees1 = 10;
scale1 = 'C';
convert_weight(degrees1, scale1, &degrees2, &scale2);
printf("%d %c = %d %c\n");
return 0;
}

我不明白函数调用中所有变量的含义。

如果我不必将所有不同的东西传递给函数,我就会知道该怎么做,但可能不会弄乱 main。

如何编写接受该形式参数的函数?

最佳答案

我认为你必须用这个原型(prototype)编写一个函数:

void convert_weight(int degrees1, char scale1, int *degrees2, char *scale2);

然后,在函数体中,您可以使用 * Degrees2 作为输入/输出 int 值,使用 *scale2 作为输入/输出字符

在简单的代码中,您不需要进一步弄乱指针。

PS:当你说:

printf("%d %c = %d %c\n");

你可能想要:

printf("%d %c = %d %c\n", degrees1, scale1, degrees2, scale2);

否则它将呈现未定义的行为。

关于c - 当 &variableName 是函数的参数时,它会做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24248478/

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