当前位置:  开发笔记 > 编程语言 > 正文

我的程序打印0而不是预期的数字

如何解决《我的程序打印0而不是预期的数字》经验,为你挑选了1个好方法。



1> Some program..:

这里的问题是(我相信)你希望result传递给函数的参数改变值.这不是C是如何工作的,而不是所有的参数传递由值和变量result调用的函数里面是具有无连接的局部变量result调用函数变量.更改一个变量不会影响另一个变量.

而是使用函数返回的值:

result = connection(num1, num2, result);

当然,这意味着result作为一个参数传递是完全没有意义的,你甚至不需要它在函数中:

int connection(int num1, int num2)
{
    return num1 + num2;
}

另请注意,我更改了返回类型,因为添加两个整数永远不会产生浮点数.


修改参数的旁注意味着你必须通过引用传递它,C不支持它.虽然可以通过使用指针来模拟它:

void connection(int num1, int num2, int *result)
{
    *result = num1 + num2;
}

然后称之为

int result;
connection(num1, num2, &result);

推荐阅读
保佑欣疼你的芯疼
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有